📄 application.cpp
字号:
#include "StdAfx.h"
#include ".\application.h"
IMPLEMENT_DYNCREATE(CApplication, CCmdTarget)
BEGIN_MESSAGE_MAP(CApplication, CCmdTarget)
END_MESSAGE_MAP()
BEGIN_DISPATCH_MAP(CApplication, CCmdTarget)
DISP_FUNCTION_ID(CApplication, "Show", dispidShow, Show, VT_EMPTY, VTS_NONE)
END_DISPATCH_MAP()
BEGIN_INTERFACE_MAP(CApplication, CCmdTarget)
INTERFACE_PART(CApplication, IID_IApplication, LocalClass)
END_INTERFACE_MAP()
IMPLEMENT_OLECREATE(CApplication, "mycoolapp.Application", 0xB6A993E4, 0xBFAA, 0x452c, 0x99, 0x8F, 0xBB, 0x4F, 0x6D, 0x6E, 0x07, 0x25)
CApplication::CApplication(void)
{
EnableAutomation();
::AfxOleLockApp();
}
CApplication::~CApplication(void)
{
::AfxOleUnlockApp();
}
STDMETHODIMP_(ULONG) CApplication::XLocalClass::AddRef()
{
METHOD_PROLOGUE(CApplication, LocalClass)
return pThis->ExternalAddRef();
}
STDMETHODIMP_(ULONG) CApplication::XLocalClass::Release()
{
METHOD_PROLOGUE(CApplication, LocalClass)
return pThis->ExternalRelease();
}
STDMETHODIMP CApplication::XLocalClass::QueryInterface(
REFIID iid, LPVOID* ppvObj)
{
METHOD_PROLOGUE(CApplication, LocalClass)
return pThis->ExternalQueryInterface(&iid, ppvObj);
}
STDMETHODIMP CApplication::XLocalClass::GetTypeInfoCount(
UINT FAR* pctinfo)
{
METHOD_PROLOGUE(CApplication, LocalClass)
LPDISPATCH lpDispatch = pThis->GetIDispatch(FALSE);
ASSERT(lpDispatch != NULL);
return lpDispatch->GetTypeInfoCount(pctinfo);
}
STDMETHODIMP CApplication::XLocalClass::GetTypeInfo(
UINT itinfo, LCID lcid, ITypeInfo FAR* FAR* pptinfo)
{
METHOD_PROLOGUE(CApplication, LocalClass)
LPDISPATCH lpDispatch = pThis->GetIDispatch(FALSE);
ASSERT(lpDispatch != NULL);
return lpDispatch->GetTypeInfo(itinfo, lcid, pptinfo);
}
STDMETHODIMP CApplication::XLocalClass::GetIDsOfNames(
REFIID riid, OLECHAR FAR* FAR* rgszNames, UINT cNames,
LCID lcid, DISPID FAR* rgdispid)
{
METHOD_PROLOGUE(CApplication, LocalClass)
LPDISPATCH lpDispatch = pThis->GetIDispatch(FALSE);
ASSERT(lpDispatch != NULL);
return lpDispatch->GetIDsOfNames(riid, rgszNames, cNames,
lcid, rgdispid);
}
STDMETHODIMP CApplication::XLocalClass::Invoke(
DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags,
DISPPARAMS FAR* pdispparams, VARIANT FAR* pvarResult,
EXCEPINFO FAR* pexcepinfo, UINT FAR* puArgErr)
{
METHOD_PROLOGUE(CApplication, LocalClass)
LPDISPATCH lpDispatch = pThis->GetIDispatch(FALSE);
ASSERT(lpDispatch != NULL);
return lpDispatch->Invoke(dispidMember, riid, lcid,
wFlags, pdispparams, pvarResult,
pexcepinfo, puArgErr);
}
STDMETHODIMP CApplication::XLocalClass::Show()
{
METHOD_PROLOGUE(CApplication, LocalClass)
pThis->Show();
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -