2

我是第一次使用 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-bit Lnaguage C++ Visual Studio 2008

4

1 回答 1

3

至少根据您链接的代码,您有一个 ServiceMain,并且(大概在main)您调用CreateService.

您似乎缺少的步骤是 call to StartServiceafter you call CreateService

于 2013-08-28T06:57:43.463 回答