代码之家  ›  专栏  ›  技术社区  ›  Paul

COM是WTL的要求吗?

  •  3
  • Paul  · 技术社区  · 9 年前

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

    更让人困惑的是,ATL具有以下类 CComCriticalSection ,这与COM无关,尽管名称如此。

    所以我的问题是:有必要打电话吗 CoInitialize(Co初始化) 在WTL程序中,即使没有明确使用COM?

    1 回复  |  直到 9 年前
        1
  •  7
  •   Roman Ryltsov    9 年前

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