我正在開發一個項目,其中我有一個在Local System Account
下運行的Windows服務。允許系統帳戶啓動模擬進程
我想要做的是啓動另一個應該將文件寫入磁盤的進程(C++應用程序)。
如果我只是使用Process.Start
,那麼目標應用程序也運行在Local System Account
下,據我所知我不能簡單地在任何地方寫文件。
由於這個原因,我試圖讓目標應用程序作爲一個不同的用戶運行。
ProcessStartInfo psi = new ProcessStartInfo(@"C:\Path\to\Application.exe", parameters);
psi.UseShellExecute = false;
psi.UserName = "Username";
System.Security.SecureString sec = new System.Security.SecureString();
foreach (Char c Password)
sec.AppendChar(c);
psi.Password = sec;
psi.Domain = ".";
psi.LoadUserProfile = true;
Process.Start(psi);
但我得到一個Win32異常告訴我「訪問被拒絕」。 有人知道我能如何實現我的目標嗎?
您是否檢查過[此](http://stackoverflow.com/q/16805952/806549)問題的答案? – 2013-10-30 22:16:08