mycomclassimpl.h

来自「C++ BUILDER精彩编程实例集锦(源码) 第一部分 界面设计 第二部分」· C头文件 代码 · 共 59 行

H
59
字号
// MYCOMCLASSIMPL.H : Declaration of the TMyComClassImpl

#ifndef MyComClassImplH
#define MyComClassImplH

#define ATL_APARTMENT_THREADED

#include "ComServer_TLB.H"


/////////////////////////////////////////////////////////////////////////////
// TMyComClassImpl     Implements IMyComClass, default interface of MyComClass
// ThreadingModel : Apartment
// Dual Interface : TRUE
// Event Support  : FALSE
// Default ProgID : ComServer.MyComClass
// Description    : 
/////////////////////////////////////////////////////////////////////////////
class ATL_NO_VTABLE TMyComClassImpl :
  public CComObjectRootEx<CComSingleThreadModel>,
  public CComCoClass<TMyComClassImpl, &CLSID_MyComClass>,
  public IDispatchImpl<IMyComClass, &IID_IMyComClass, &LIBID_ComServer>
{
public:
  TMyComClassImpl()
  {
  }

  // Data used when registering Object
  //
  DECLARE_THREADING_MODEL(otApartment);
  DECLARE_PROGID("ComServer.MyComClass");
  DECLARE_DESCRIPTION("");

  // Function invoked to (un)register object
  //
  static HRESULT WINAPI UpdateRegistry(BOOL bRegister)
  {
    TTypedComServerRegistrarT<TMyComClassImpl>
    regObj(GetObjectCLSID(), GetProgID(), GetDescription());
    return regObj.UpdateRegistry(bRegister);
  }


BEGIN_COM_MAP(TMyComClassImpl)
  COM_INTERFACE_ENTRY(IMyComClass)
  COM_INTERFACE_ENTRY2(IDispatch, IMyComClass)
END_COM_MAP()

// IMyComClass
public:

  STDMETHOD(get_Property1(BSTR* Value));
  STDMETHOD(set_Property1(BSTR Value));
  WideString InputString;
};

#endif //MyComClassImplH

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?