我正在嘗試創建一個應該啓動進程的Windows服務。此過程需要登錄到另一個帳戶。Windows服務w/process.start用戶名,密碼和域
protected override void OnStart(string[] args)
{
_thread.Start();
}
private void ThreadFunction()
{
var process = new Process
{
StartInfo =
{
UserName = "User",
Password = "Pass",
UseShellExecute = false,
FileName = @"C:\Program Files\Default Company Name\ServiceProcessInstaller\ConsoleProcess.exe"
}
};
process.Start();
}
我認爲這很簡單,但它似乎像process.start和Windows服務就像油和水。
當我開始這個過程時,什麼都沒有發生,最終發生了一個異常: Windows無法在本地計算機上啓動「AServiceProcess」服務。 錯誤1067:進程意外終止。
我真的很感謝所有的幫助,我可以得到,如果有什麼不清楚讓我知道。
你絕對應該嘗試捕捉和記錄問題的地方。 – 2012-08-14 10:27:30
可能的重複http://stackoverflow.com/questions/1454502/how-can-i-restart-a-windows-service-programatically-in-net – 2012-08-14 10:44:57
記錄異常之後: System.ComponentModel.Win32Exception(0x80004005) :訪問被拒絕 at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) at System.Diagnostics.Process.Start() at ServiceProcess.Service1.ThreadFunction() – MMessell 2012-08-14 11:29:27