📄 dlgproxy.cpp
字号:
// DlgProxy.cpp : 实现文件
//
#include "stdafx.h"
#include "S16_04.h"
#include "DlgProxy.h"
#include "S16_04Dlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CS16_04DlgAutoProxy
IMPLEMENT_DYNCREATE(CS16_04DlgAutoProxy, CCmdTarget)
CS16_04DlgAutoProxy::CS16_04DlgAutoProxy()
{
EnableAutomation();
// 为使应用程序在自动化
// 对象处于活动状态时一直保持运行,构造函数调用 AfxOleLockApp。
AfxOleLockApp();
// 通过应用程序
// 的主窗口指针来访问对话框。设置代理的内部指针
// 指向对话框,并设置对话框的后向指针指向
// 该代理。
ASSERT (AfxGetApp()->m_pMainWnd != NULL);
ASSERT_VALID (AfxGetApp()->m_pMainWnd);
ASSERT_KINDOF(CS16_04Dlg, AfxGetApp()->m_pMainWnd);
m_pDialog = reinterpret_cast<CS16_04Dlg*>(AfxGetApp()->m_pMainWnd);
m_pDialog->m_pAutoProxy = this;
}
CS16_04DlgAutoProxy::~CS16_04DlgAutoProxy()
{
// 为了在用
// 自动化创建所有对象后终止应用程序,析构函数调用 AfxOleUnlockApp。
// 除了做其他事情外,这还将销毁主对话框
if (m_pDialog != NULL)
m_pDialog->m_pAutoProxy = NULL;
AfxOleUnlockApp();
}
void CS16_04DlgAutoProxy::OnFinalRelease()
{
// 释放了对自动化对象的最后一个引用后,将调用
// OnFinalRelease。基类将自动
// 删除该对象。在调用该基类之前,请添加您的
// 对象所需的附加清除代码。
CCmdTarget::OnFinalRelease();
}
BEGIN_MESSAGE_MAP(CS16_04DlgAutoProxy, CCmdTarget)
END_MESSAGE_MAP()
BEGIN_DISPATCH_MAP(CS16_04DlgAutoProxy, CCmdTarget)
END_DISPATCH_MAP()
// 注意:我们添加了对 IID_IS16_04 的支持以
// 支持 VBA 中的类型安全绑定。此 IID 必须与附加在 .IDL 文件中的
// 调度接口的 GUID 相匹配。
// {29ED40FC-5E72-4D9D-8844-2BED42DAC549}
static const IID IID_IS16_04 =
{ 0x29ED40FC, 0x5E72, 0x4D9D, { 0x88, 0x44, 0x2B, 0xED, 0x42, 0xDA, 0xC5, 0x49 } };
BEGIN_INTERFACE_MAP(CS16_04DlgAutoProxy, CCmdTarget)
INTERFACE_PART(CS16_04DlgAutoProxy, IID_IS16_04, Dispatch)
END_INTERFACE_MAP()
// IMPLEMENT_OLECREATE2 宏在此项目的 StdAfx.h 中定义
// {F1415D83-8B5C-4633-B99F-212A7427165B}
IMPLEMENT_OLECREATE2(CS16_04DlgAutoProxy, "S16_04.Application", 0xf1415d83, 0x8b5c, 0x4633, 0xb9, 0x9f, 0x21, 0x2a, 0x74, 0x27, 0x16, 0x5b)
// CS16_04DlgAutoProxy 消息处理程序
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -