title: Error in Process.Start() – The System cannot find the file specified
body: <p>I am Using the below code to fetch a file from database and print it with the selected printer from Installed Printers populated in the Dropdownlist, my problem is during using the <strong>Printjob.Start()</strong> it throws the Exception <strong>The System cannot find the file specified</strong> </p>
  
  <p>My code is,</p>
  
  <pre><code>protected void ggvqpdetail_RowCommand(object sender, GridViewCommandEventArgs e)
  {
      if (e.CommandName.ToUpper().ToString() == "PRINTREC")
      {
          try
          {
              // Set the printer to a printer in the dropdown box when the selection changes. 
              PrintDocument printDoc = new PrintDocument();
              string a = TextBox1.Text + TextBox2.Text + TextBox3.Text;
              DataSet ds = ExamManagement.SP.Eval_QP_PrintSelect(a).GetDataSet();
              if (ddlprint.SelectedIndex != -1 &amp;&amp; ds.Tables[0].Rows.Count &gt; 0)
              {
                  // The dropdown box's Text property returns the selected item's text, which is the printer name.
                  printDoc.PrinterSettings.PrinterName = ddlprint.Text;
  
                  Process printJob = new Process();
                  printJob.StartInfo.FileName = ds.Tables[0].Rows[0]["Data"].ToString();
                  printJob.StartInfo.UseShellExecute = true;
                  printJob.StartInfo.Verb = "printto";
                  printJob.StartInfo.CreateNoWindow = true;
                  printJob.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                  printJob.StartInfo.Arguments = ddlprint.Text;
                  printJob.StartInfo.WorkingDirectory = Path.GetDirectoryName(ds.Tables[0].Rows[0]["Data"].ToString());
                  printJob.Start();
              }
          }
          catch(Exception ex)
          {
              Lblmsg.Visible = true;
              Lblmsg.Text = ex.Message;
          }
      }
  }
  </code></pre>