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

实现一个简单的COM对象

  •  2
  • Rob  · 技术社区  · 14 年前

    我需要在传统的Web应用程序中使用直C++(没有ATL)来实现一个裸COM对象来检查我的应用程序是否存在。Web应用程序执行如下操作(javascript):

    var object = new ActiveXObject("My.Application");

    我希望确保上述操作成功,但这正是我所需要做的-我不需要在这个对象上实现任何方法/属性,因为它们从未被调用过。

    显然,我需要通过添加必要的注册表设置等来确保注册我的对象。我的应用程序是一个dll,所以我想我还需要实现一些导出的函数(dllRegisterServer、dllunRegisterServer、dllCanUnloadNow和dllGetClassObject)。

    我非常肯定,从dllgetclassobject返回s ouk不会切断它。

    我如何在不使用ATL的情况下实现基本接口?如果这有帮助的话,我正在使用MS编译器。

    2 回复  |  直到 14 年前
        1
  •  3
  •   MSalters    14 年前

    DllGetClassObject rclsid CLASS_E_CLASSNOTAVAILABLE Microsoft now passes at least one invalid class ID.

    IUnknown

    IDispatch

        2
  •  1
  •   Hans Passant    14 年前