在C ++中安装和运行Windows服务

时间:2013-08-28 06:12:13

标签: c++ windows windows-services

我是第一次使用Windows服务,经过一番努力,我现在可以用C ++编程安装和取消服务, 我找到了许多指导如何处理的教程  ServiceMain和ServiceControlHandler函数。 问题是没有教程显示我们首先安装服务然后在同一程序中应用ServiceMain和ServiceControlHandler函数。

简而言之,我正在尝试将两种功能集成在同一代码中,但它无法正常工作。

以下是我关注的一些链接

http://www.codeproject.com/Articles/499465/Simple-Windows-Service-in-Cplusplus

http://www.devx.com/cplus/Article/9857/0/page/2

http://msdn.microsoft.com/en-us/library/ms683500(v=vs.85).aspx

我的源代码几乎是上述示例的完全副本,除了在创建之前 SERVICE_TABLE_ENTRY并调用StartServiceCtrlDispatcher(ServiceTable)我调用了安装服务的函数。

服务安装正确但永远不会开始运行,因此从不调用ServiceMain。

环境: Windows 7 64位 Lnaguage C ++ Visual Studio 2008

1 个答案:

答案 0 :(得分:4)

至少根据您链接的代码,您有一个ServiceMain,并且(可能在main中)您调用了CreateService

您似乎缺少的步骤是在致电CreateService后致电StartService