一.建立自动化对象--源程序:
1.打开vc,建立一个工程,选择MFC AppWizard(exe),在project name里输入:AutoAppTest
2.下一步,选Dialog based单选框
3.下一步,选Automation复选框
4.点击完成
5.在整个工程中,有三个类和一个接口说明,类分别为:CAutoAppTestApp、CAutoAppTestDlg、CAutoAppTestDlgAutoProxy
其中CAutoAppTestDlgAutoProxy
,我们在客户程序中要用到她。
6.添加方法和属性。这里我只添加一个方法void ShowMsg(LPCTSTR lpShow),打开ClassWizard,在Automation选项卡里,在Class Name的下拉菜单中选择
CAutoAppTestDlgAutoProxy
LPCTSTR。点击Ok按钮,至此,我们向接口IAutoAppTest添加了我们自己的方法,可以浏览IAutoAppTest口描述文件。
7.点击Edit Code按钮为这个方法写代码。代码如下:
void CAutoAppTestDlgAutoProxy
{
//
}
编译,至此一个AutoAppTest.exe形式的自动化对象生成。在生成的应用程序的目录下,我们注意AutoAppTest.tlb文件,这个文件在客户端程序上要用到。
二.建立客户端程序调用自动化对象
1.打开vc,安普通的步骤建立一个exe工程文件。
2.引用Com对象。打开ClassWizard对话框,点击Add Class...按钮,选择From a Tpye library...,选择上面编译程序后生成的AutoAppTest.tlb文件,点击ok,在工程中会生成一
个IAutoAppTest的类。我们只需在整个的工程应用中应用这个类里的方法,就能调用AutoAppTest.exe自动化对象的方法。
3.代码实现:
a.声明变量:IAutoAppTest m_Auto;
b.在应用程序的启动处(CRunTestApp::InitInstance)添加应用程序支持COM的初始化工作
c. CRunTestDlg::OnInitDialog()在此处代码加入如下代码:
d.void CRunTestDlg::OnOK()
{
}