我有一个应用程序(winforms)将文件下载到用户的临时文件夹,然后打开文件供用户查看内容,当文件关闭时,文件将从临时文件夹中删除。如果我打开一个 .pdf 和一个 .doc,则应用程序运行正常 如果另一个 winword 进程仍在运行,则在尝试打开一个 .doc 时出现问题(无论是由我的应用程序打开还是由用户直接打开) .
我正在使用以下代码:
_OpenFileProces = System.Diagnostics.Process.Start(TempFileName);
_OpenFileProces.EnableRaisingEvents = true;
_OpenFileProces.Exited += new EventHandler(_OpenFileProces_Exited);
这个是清除温度的
void _OpenFileProces_Exited(object sender, EventArgs e)
{
string s = ((System.Diagnostics.Process)sender).StartInfo.FileName;
System.IO.File.Delete(s);
}
似乎正在运行的进程正在停止我自己的进程。由于停止它会删除文件,或者在尝试删除文件时会产生错误。
您对我如何打开自己的流程有什么建议吗?问题是我不知道我必须打开什么文件类型(可以是任何文件),我指望 Windows 来选择最好的应用程序。根据我的测试,记事本工作正常,但 winword 和 acrobat 关闭了我的进程。
谢谢