0
我在Visual C++中創建了一個服務。安裝它使用instsrv.exe
和srvany.exe
。 當我檢查控制面板中的服務小程序時,服務已註冊。但是,當我想要啓動它,出現此消息:如何爲Windows服務程序編寫OnStart函數?
the service on Local Computer started and then stopped. Some service stop automatically if they have no work to do, for example the Performance logs and Alert Service.
我只是有這樣的代碼我的OnStart函數中:
(void)system("C:\ReleaseExe\Example1Server.exe");
我我的代碼是否正確?或者有沒有其他的方式來編碼,以確保服務可以處於運行狀態?
你的假設是正確的。我的exe是我簡單的RPC服務器。到目前爲止,當我使用控制檯調用RPC服務器時,RPC服務器工作。 – karikari 2011-06-20 00:39:26
接下來會發生什麼,OnStart不會被調用。您需要按照http://msdn.microsoft.com/en-us/library/ms685967(v=VS.85).aspx中所述編寫服務入口點,ServiceMain和服務控制處理程序。無論如何,你不需要使用'system'來自己執行你的進程 - 這就是SCM所做的。 – 2011-06-20 12:45:30