我正在研究需要沙盒應用程序的項目。我可以創建一個Windows用戶,創建一個目錄,用應用程序填充目錄,並以用戶身份運行應用程序。這工作完全罰款運行作爲控制檯應用程序,但是當我安裝它作爲一個服務,我得到這個異常:作爲用戶從Windows服務失敗與Access運行進程被拒絕?
System.ComponentModel.Win32Exception: Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
拋出此異常的代碼是:
_process = new Process
{
StartInfo =
{
Arguments = "",
CreateNoWindow = true,
ErrorDialog = false,
FileName = instanceDirectory + "program.exe",
WorkingDirectory = instanceDirectory,
UseShellExecute = false,
UserName = GetUserNameForInstance(_id),
Password = GetPasswordForInstance(_id),
Domain = ""
},
EnableRaisingEvents = true
};
_process.Exited += ProcessExited;
_process.Start();
再次,這是隻作爲Windows服務運行時引發。根據Windows中的服務面板,服務在LOCAL SYSTEM下運行。
任何想法?
可執行文件位於何處? – wj32 2010-01-17 08:27:54
我在這裏面對完全相同的問題。你能找到解決方案嗎? – kizzx2 2011-05-28 17:18:38