COM是WTL的必需品吗?

时间:2015-03-18 12:16:45

标签: winapi com atl wtl

在每个WTL示例中,CoInitialize被称为WinMain的第一个函数。我知道WTL基于ATL,它与COM密切相关,但正如我所看到的,WTL程序很容易不能使用任何COM代码(不是吗?)。

令人困惑的是,ATL有CComCriticalSection等类,与COM无关,尽管有名称。

所以我的问题是:是否有必要在WTL程序中调用CoInitialize,即使没有明确使用COM?

1 个答案:

答案 0 :(得分:7)

不,CoInitialize不是WTL应用程序的要求。许多WTL类与COM无关。从历史上看,正如您所提到的,WTL与ATL紧密相连,而ATL又是COM开发的主要框架,而COM初始化是一个自然的步骤,因为应用程序可能会对COM做些什么。