c#使用process.start启动程序报错解决方法
更新时间:2020年6月25日 11:39 点击:1612
出错信息:
复制代码 代码如下:
Unknown error (0xffffffff)
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start(String fileName, String arguments)
at ProcessStart.Form1.start()
[/code}
出错情景:
我们发现大多数情况下,C#调用Process.Start根本不会出错。这个错误通常出现在当你使用Local System帐号运行程序时,例如我们有一个windows服务,此服务调用Process.Start创建新进程时,新进程及其所有的子进程都是以System帐号运行的。这时调用Process.Start就有可能出现此错误,只是有可能,其实在我们那么多机器上只有一台运行windows 2003的服务器出现了这个错误。可能与系统设置有关,深层原因有待考察。
解决方法:
只要修改代码,设置ProcessStartInfo的UseShellExecute=false即可
[code]
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = exepath;
psi.UseShellExecute = false;
psi.CreateNoWindow = true;
Process.Start(psi);
上一篇: C#中Linq查询基本操作使用实例
相关文章
深入分析NTFS中文件被锁定导致Process.Start失败的详解
本篇文章是对NTFS中文件被锁定导致Process.Start失败进行了详细的分析介绍,需要的朋友参考下...2020-06-25- c#使用process.start启动程序报错解决方法,大家参考使用吧...2020-06-25