如果我使用 native Windows API 调用(如 StartServiceCtrlDispatcher() 等)而不是 ATL 服务 (http://msdn.microsoft.com/en-us/library/74y2334x%28v=vs.80%29.aspx) 来安装、卸载或控制我的服务,并且仍然使用某些 ATL 功能,它会把一切搞砸吗?
最佳答案
在服务中使用 ATL 是安全的。需要注意的一个警告是,如果服务托管一个由其他进程使用的 COM 服务器,请确保在调用 CoRegisterClassObject()
之前先调用 StartServiceCtrlDispatcher()
Win2003+ 否则 CoRegisterClassObject()
将失败。调用顺序在早期操作系统版本上无关紧要。
关于c++ - 我可以在 native C++ 服务中使用 ATL 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15469030/