出錯信息:
出錯情景:
我們發(fā)現(xiàn)大多數(shù)情況下,C#調(diào)用Process.Start根本不會出錯。這個錯誤通常出現(xiàn)在當(dāng)你使用Local System帳號運行程序時,例如我們有一個windows服務(wù),此服務(wù)調(diào)用Process.Start創(chuàng)建新進程時,新進程及其所有的子進程都是以System帳號運行的。這時調(diào)用Process.Start就有可能出現(xiàn)此錯誤,只是有可能,其實在我們那么多機器上只有一臺運行windows 2003的服務(wù)器出現(xiàn)了這個錯誤。可能與系統(tǒng)設(shè)置有關(guān),深層原因有待考察。
解決方法:
只要修改代碼,設(shè)置ProcessStartInfo的UseShellExecute=false即可
[code]
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = exepath;
psi.UseShellExecute = false;
psi.CreateNoWindow = true;
Process.Start(psi);
新聞熱點
疑難解答
圖片精選