📄 myautoobjimpl.h
字号:
// MYAUTOOBJIMPL.H : Declaration of the TMyAutoObjImpl
#ifndef MyAutoObjImplH
#define MyAutoObjImplH
#include "AutoServ_TLB.H"
/////////////////////////////////////////////////////////////////////////////
// TMyAutoObjImpl Implements IMyAutoObj, default interface of MyAutoObj
// and IMyAutoObjEvents, the default source interface
// ThreadingModel : Apartment
// Dual Interface : TRUE
// Event Support : TRUE
// Default ProgID : AutoServ.MyAutoObj
// Description : My Automation Object
/////////////////////////////////////////////////////////////////////////////
class ATL_NO_VTABLE TMyAutoObjImpl :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<TMyAutoObjImpl, &CLSID_MyAutoObj>,
public IConnectionPointContainerImpl<TMyAutoObjImpl>,
public TEvents_MyAutoObj<TMyAutoObjImpl>,
public IDispatchImpl<IMyAutoObj, &IID_IMyAutoObj, &LIBID_AutoServ>
{
public:
TMyAutoObjImpl()
{
}
// Data used when registering Object
//
DECLARE_THREADING_MODEL(otApartment);
DECLARE_PROGID("AutoServ.MyAutoObj");
DECLARE_DESCRIPTION("My Automation Object");
// Function invoked to (un)register object
//
static HRESULT WINAPI UpdateRegistry(BOOL bRegister)
{
TTypedComServerRegistrarT<TMyAutoObjImpl>
regObj(GetObjectCLSID(), GetProgID(), GetDescription());
return regObj.UpdateRegistry(bRegister);
}
BEGIN_COM_MAP(TMyAutoObjImpl)
COM_INTERFACE_ENTRY(IMyAutoObj)
COM_INTERFACE_ENTRY2(IDispatch, IMyAutoObj)
COM_INTERFACE_ENTRY_IMPL(IConnectionPointContainer)
END_COM_MAP()
BEGIN_CONNECTION_POINT_MAP(TMyAutoObjImpl)
CONNECTION_POINT_ENTRY(DIID_IMyAutoObjEvents)
END_CONNECTION_POINT_MAP()
// IMyAutoObj
public:
STDMETHOD(get_Text(long* Value));
STDMETHOD(set_Text(long Value));
};
#endif //MyAutoObjImplH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -