我正在創建一個在Windows 7上運行.exe文件的服務。由於需求複雜,必須將其作爲服務來完成,因此控制檯應用程序不可用。服務未運行應用程序
我已經編寫了下面的代碼,它完美地在控制檯應用程序中運行,但是當放置在服務中時,可執行文件從不運行。
ProcessStartInfo startInfo = new ProcessStartInfo();
try
{
startInfo.WorkingDirectory = "C:\\Folder";
startInfo.FileName = "MyApp.exe";
Process myProcess = Process.Start(startInfo);
}
catch (Exception ex)
{
using (StreamWriter writer = File.AppendText(path))
{
writer.WriteLine(ex.Message);
}
}
}
沒有錯誤被拋出,但應用程序根本沒有啓動。
我讀過服務無法以直接的方式運行可執行文件,並根據建議修改了上述代碼,但它不起作用。
編輯:我已經手動配置的服務如下:
您是否嘗試指定具體用戶在服務屬性對話框下運行? – Redwan
我附上了一個截圖,顯示了我在服務窗口中配置的內容。 –
因此,該用戶可能沒有足夠的權利來運行外部應用程序。嘗試在用戶政治中挖掘信息或在「管理員」下運行(但這是一個糟糕的主意)。 – Redwan