如果我使用本地windows API調用(如StartServiceCtrlDispatcher()等)而不是ATL服務(http://msdn.microsoft.com/en-us/library/74y2334x%28v=vs.80%29.aspx)來安裝,卸載或控制我的服務並仍然使用某些ATL函數,它會把所有東西都搞砸了嗎?我可以在本地C++服務中使用ATL嗎?
0
A
回答
1
不,應該沒問題,通過Native WinAPI調用來控制服務,並且仍然使用ATL來處理其他問題。之前我已經看到這種情況發生在生產代碼中。例如,WinAPI調用控制了服務,但使用了<atlenc.h>
中的一些加密函數。
也就是說,我不能保證將ATL功能的全部混合是安全的。您最好的選擇是在使用之前閱讀ATL函數的完整文檔。
2
(我假設你使用本地代碼,不DOTNET工作。是否如此?)
東西一樣ATL,MFC是包裝周圍的原生Win32調用。在同一個應用程序中使用本機和包裝應該不存在問題 。
5
在服務中使用ATL是安全的。需要注意的是,如果服務託管其他進程使用的COM服務器,請確保在致電CoRegisterClassObject()
Win2003 +之前致電StartServiceCtrlDispatcher()
,否則CoRegisterClassObject()
將失敗。調用順序在早期的操作系統版本上無關緊要。
相關問題
- 1. 我可以使用Apache服務器作爲本地網絡嗎?
- 2. 我可以在ATL中使用流式結構嗎?
- 3. 我的Azure移動服務可以在本地運行嗎?
- 4. WebView可以在服務中使用嗎?
- 5. 我可以在本地調用自託管WCF服務中的方法嗎?
- 6. 我可以在我的服務器上本地緩存外部腳本嗎?
- 7. 我可以在cgo中使用C++嗎?
- 8. 我可以在C++中使用UDK嗎?
- 9. 我可以在C++中使用MiGLayout嗎?
- 10. 我可以在WCF中使用netTcpBinding添加服務引用嗎?
- 11. c + + windows服務沒有ATL
- 12. 您可以在AMP服務器中使用C#庫嗎?
- 13. 我們可以使用c#編寫NNTP服務器嗎?
- 14. 我可以在WCF服務中使用Session對象嗎?
- 15. 我可以在RESTful Web服務中使用wait()嗎?
- 16. 我可以在webpack中使用node.js服務器模塊嗎?
- 17. 我可以在Windows服務中使用DataGridView嗎?
- 18. Angular - 我可以在Http攔截器服務中使用$ mdDialog嗎?
- 19. 我可以在android服務中使用共享偏好嗎?
- 20. 我可以在實體框架4.3中使用RIA服務嗎?
- 21. 我可以在劇本中使用Web服務中的清單數據嗎?
- 22. 我可以在Stormpath中使用本地數據庫嗎?
- 23. 我可以在Windows服務中託管WCF服務嗎?
- 24. 我可以在Watson對話服務對話框中使用LaTex腳本嗎?
- 25. 你可以在本地服務器上做RSS源嗎? (PHP)
- 26. 可以在本地服務器上安裝Prairie嗎?
- 27. 我可以使用httparty還是疲倦地使用SOAP Web服務嗎?
- 28. 您可以在C++/CLI WinForms應用程序中本地使用C++庫嗎?
- 29. 我可以(安全地)使用ADO.NET數據服務中的ThreadStatic屬性嗎?
- 30. 我可以在Xcode的Linux服務器上使用SVN嗎?