Winapi COM是WTL的要求吗?

Winapi COM是WTL的要求吗?,winapi,com,atl,wtl,Winapi,Com,Atl,Wtl,在每个WTL示例中,CoInitialize被称为WinMain的第一个函数。我知道WTL是基于ATL的,ATL与COM密切相关,但在我看来,WTL程序很容易不使用任何COM代码(不是吗?) 更让人困惑的是,ATL有一些类,比如CComCriticalSection,它们与COM无关,尽管名称不同 所以我的问题是:在WTL程序中调用CoInitialize是否有必要,即使没有明确使用COM?否,CoInitialize不是WTL应用程序的要求。许多WTL类与COM无关。从历史上看,正如您所提到的

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

更让人困惑的是,ATL有一些类,比如
CComCriticalSection
,它们与COM无关,尽管名称不同


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

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