[英]Calling a C++ dll (unmanaged code) from a C# windows service (written in managed code)
[英]windows service code in c ,where to write service logic code?
標題很籠統,但我的疑問很具體。 我不確定在哪里編寫服務邏輯代碼(在服務控制處理程序或ServiceMain中),以及服務將執行的功能如何。 它在ServiceMain中嗎? 我已經在MSDN上研究了與服務有關的這些主題。 但是,對我沒有幫助http://msdn.microsoft.com/en-us/library/ms687414%28VS.85%29.aspx http://msdn.microsoft.com/en-us/library/ms685984% 28v = vs.85%29.aspx
基本上,我想使用服務啟動在Windows上偵聽的套接字。 此偵聽套接字邏輯代碼將在服務文件中,因為我將使用winexe實用程序將該服務從linux盒發送到Windows盒。 當前,winexe在Windows上發送winexesvc服務文件。 因此,最終我將替換現有的winexesvc服務,以便在Windows上發送時將在特定端口功能上執行偵聽。 (服務框架將保持不變,但其任務執行邏輯將改變,對嗎?)。 請告訴我是否有任何遺漏。 提前致謝。
服務控制處理程序僅應處理發送到服務的控制消息(鏈接的示例中顯示的控制消息是SERVICE_CONTROL_STOP
和SERVICE_CONTROL_INTERROGATE
)。 這些控制消息從環境發送到服務。
完成所有必需的初始化后,應該在ServiceMain
函數中實現服務的邏輯。 在帖子中URL的示例中,服務邏輯代碼被放入SvcInit
函數中(對於執行服務邏輯的函數,這可能不是最合適的名稱)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.