如何在登錄到Windows之前啓動Windows窗體應用程序?在登錄到Windows之前是否可以啓動Windows窗體應用程序?如果不是,在登錄之前是否有機會啓動Windows服務,並在登錄之前從已啓動的服務調用Windows窗體應用程序?在登錄到Windows之前啓動Windows窗體應用程序
1
A
回答
2
根據要運行標準桌面應用程序的問題的意見,該應用程序使用WinForms構建而不是服務,該應用程序在用戶登錄之前啓動。
這是不可能的。你需要的是一項服務。
2
非常符合,但應該給你的要點。您還需要爲其創建ServiceProcessInstaller
(並撥打電話installutil
)。
public class WinFormHostService : System.ServiceProcess.ServiceBase
{
[STAThread]
public static void Main()
{
System.ServiceProcess.ServiceBase.Run(new WinFormHostService());
}
protected Process winFormsProcess;
public WinFormHostService()
{
this.ServiceName = "WinForm Host Service";
this.AutoLog = true;
}
protected override void OnStart(String[] args)
{
this.winFormsProcess = new Process();
try
{
this.winFormsProcess.UseShellExecute = false;
this.winFormsProcess.FileName = @"C:\Program Files\MyApp\MyApp.exe";
this.winFormsProcess.CreateNoWindow = true;
this.winFormsProcess.Start();
}
catch (Exception ex)
{
// unable to start process
}
}
}
這基本上就像從Windows服務託管WCF服務,所以如果你需要更多的細節查找「WCF Windows服務的主機」(或類似),看看how that's done。同樣的前提下,您只需要使用Process
。
相關問題
- 1. 在登錄之前在Windows啓動時加載應用程序
- 2. 在Windows登錄之前啓動vb.net應用程序
- 3. Windows 8在用戶登錄之前自動啓動程序
- 4. 使用Windows窗體應用程序自動登錄用戶?
- 5. 在Windows登錄之前運行程序
- 6. 在Windows登錄窗口之前啓動批處理腳本
- 7. 在Windows Shell啓動之前啓動應用程序?
- 8. 自動登錄程序(隱藏窗體)vb.NET Windows窗體
- 9. Windows窗體登錄
- 10. 在Windows登錄從USB啓動程序
- 11. C#Windows窗體登錄程序
- 12. 如何在Windows登錄異常窗體應用程序
- 13. 在Windows 8.1上自動啓動Java應用程序登錄
- 14. 在windows用戶登錄上啓動模擬應用程序
- 15. Windows窗體應用程序中的用戶登錄失敗
- 16. Windows窗體應用程序
- 17. 在用戶登錄之前啓動控制檯應用程序
- 18. 登錄Windows 6移動應用程序
- 19. Windows服務在用戶登錄之前不會啓動
- 20. 在Windows登錄c之前打開窗體#
- 21. 從.NET應用程序登錄到Windows
- 22. 在Windows資源管理器之前啓動應用程序
- 23. 啓動Windows錄音機應用程序
- 24. 如何在Windows窗體應用程序中創建自動登錄?
- 25. Windows窗體:登錄後創建主應用程序,運行哪個窗體?
- 26. 在登錄屏幕之前的每個Windows啓動時運行一個程序
- 27. Windows 7在啓動過程和登錄之前連接到網絡
- 28. 重新啓動Windows窗體應用程序
- 29. Windows窗體應用程序啓動時空白按鈕
- 30. 從Windows窗體啓動UWP應用程序 - 入口點?
如果用戶沒有登錄,_form_會有什麼好處? –
我有一個龐大的代碼,不想將項目移植到Windows服務應用程序。 – sanchop22
如果您希望它在計算機環境下運行,並且不需要用戶的輸入或反饋,我強烈建議將其重構爲服務運行。您可以使用['Process'](http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx)並從服務啓動應用程序,但表單應用程序的全部本質是給用戶可以互動;如果它作爲服務運行,這個組件將會丟失。 –