Процесс не может получать доступ к файлу, потому что он использован в другом процессе. C#

Когда я печатаю документ, и стараюсь удалять это после, у меня выходит следующая ошибка:

Процесс не может получать доступ к файлу C:\T33F9472.pdf, потому что он использован в другом процессе.

Код, который я использую, - следующий:

String pathTmp = "C:\\" + "T33F9472.pdf"+ ".pdf";
        using (FileStream fs = new FileStream(pathTmp, FileMode.Create))
        {
            fs.Write(renderedBytes, 0, renderedBytes.Length);
            fs.Close();
            SendToPrinter(pathTmp);
            if (System.IO.File.Exists(pathTmp))
            {
                System.IO.File.Delete(pathTmp);
            }
            file_name = fileContentResult.FileDownloadName;
        }

 private void SendToPrinter(String filePath)
    {
        ProcessStartInfo info = new ProcessStartInfo();
        info.Verb = "print";
        info.FileName = filePath;
        info.CreateNoWindow = true;
        info.WindowStyle = ProcessWindowStyle.Hidden;

        using (Process p = new Process())
        {
            p.StartInfo = info;
            p.Start();
            p.WaitForInputIdle();
            System.Threading.Thread.Sleep(3000);
        }
        //if (p.CloseMainWindow()==false) Esta linea esta comentada, porque me salia error, no me servia.
        //    p.Kill(); 

    }

Кроме того, мне хотелось бы знать, может ли ProcessStartInfo читать бинарный файл, вместо маршрута физического файла. Поскольку он мог бы решать эту проблему. С уже, спасибо.

1
задан 15.06.2017, 21:38
1 ответ

проблема решила меня используя cГіdigo следующий

try

       { tu codigo }


   Exit Function

Catch ex As Exception

         MsgBox(ex.Message & "...problemas CON GENERAR SELLO DIGITAL ")
End Try
0
ответ дан 24.11.2019, 08:18
  • 1
    Одинокое захватывает ошибку и показывает сообщение, ¿ поскольку он может решать, когда файл использован процессом.? – Jorgesys♦ 11.08.2019, 21:26