我想創建一個控制檯EXE應用程序,它可以作爲一個獨立的應用程序以及一個Windows服務運行。有可能嗎?實際上使用svchost的好處是什麼?如何創建一個獨立的exe應用程序的Windows服務?
3
A
回答
14
重寫你的Windows服務的主要方法是這樣,這將是控制檯應用程序,如果你有parametr -c運行,是不會忘了改項目類型從項目的屬性窗口安慰
public static void Main(string[] args)
{
Service service = new Service();
if (args.Contains("-c", StringComparer.InvariantCultureIgnoreCase) || args.Contains("-console", StringComparer.InvariantCultureIgnoreCase))
{
service.StartService(args);
Console.ReadLine();
service.StopService();
return;
}
ServiceBase[] ServicesToRun = new ServiceBase[]
{
service
};
ServiceBase.Run(ServicesToRun);
}
StartService和StopService只是調用服務的被忽略的OnStart和OnStop方法
+0
+1,我的回答刪除:) – 2009-07-17 10:28:24
2
這種情況的最佳方法是考慮組件的概念。
你的策略應該是開發一個你需要的所有邏輯的DLL。
之後,您將構建使用該DLL的控制檯應用程序和Windows服務。
組件的概念和重用它們的可能性是微不足道的,也是很明智的。
當你需要改變你的邏輯時,你只需要改變DLL,並用舊的替換。你不需要任何特殊的部署。
相關問題
- 1. 如何爲php獨立應用程序創建exe文件?
- 2. 如何創建應用程序獨立通知服務器?
- 3. 你如何使用qt創建獨立(只有一個exe)應用程序?
- 4. 創建一個獨立的.exe文件
- 5. 如何創建一個獨立的.Net核心應用程序?
- 6. 創建獨立的Java應用程序
- 7. 建立一個可執行的應用程序的Windows上的windows .exe
- 8. 如何用資源建立一個獨立的exe文件?
- 9. 在一個heroku應用程序中獨立縮放的服務
- 10. 如何將node.js項目創建爲windows的獨立exe文件。
- 11. 一個獨立的Delphi應用程序,也可以安裝爲Windows服務
- 12. 如何使用'C'或'C++'爲windows創建獨立程序或應用程序
- 13. 用Java創建獨立應用程序
- 14. 如何創建一個單獨的exe文件來分發C#應用程序?
- 15. 從ASP.NET網站創建獨立的Windows應用程序
- 16. 與tkinter一起使用py2exe來創建一個獨立的.exe
- 17. 如何從獨立的grails應用程序調用soap服務
- 18. 如何創建一個完整的包文件(.exe)的Windows應用程序
- 19. 如何創建Windows Phone 7作爲服務的應用程序?
- 20. 如何使python燒瓶/ jinja/sqlite應用程序的windows獨立exe文件
- 21. 什麼是獨立應用程序或獨立服務器?
- 22. WCF控制檯應用程序獨立/獨立服務
- 23. 你如何創建一個獨立的C++程序?
- 24. 創建一個Windows GUI .exe應用程序
- 25. 如何創建一個獨立的JVM?
- 26. 在Windows上運行Java獨立應用程序(作爲服務)
- 27. 如何在獨立的SWT應用程序中創建IMarker
- 28. 如何在VS2010中創建一個獨立的shell應用程序
- 29. 如何在vb6中創建一個窗體獨立的應用程序?
- 30. 創建單個EXE獨立應用程序無需安裝即可運行
可能的重複 - http://stackoverflow.com/questions/355579/my-exe-runs-fine-by-itself-but-does-nothing-when-loaded-by-a-service&http:// stackoverflow.com/questions/165951/how-can-i-run-a-cli-application-as-a-windows-service – ChrisF 2009-07-17 10:22:32