基类 一定要从 CComTarget 派生呀,只有它才提供了 IDispatch 的支持
自动化 - 无 表示不支持自动化,你要选择了它,那就白干啦
自动化 - 自动化 支持自动化,但不能被直接实例化。后面在讲解多个 IDispatch 的时候就用到它了,现在先不要着急。
自动化 - 可按类型ID创建 一定要选择这个项目,这样我们在后面的调用中,VB就能够CreateObject(),VC就能够CreateDispatch()对组件对象实例化了。注意一点,这个 ID 其实就是组件的 ProgID 啦。
3-6:选择接口,添加函数

3-7:添加函数。我们要写一个整数加法函数Add()。
3-8:再增加一个转换字符串大小写的函数 Upper()。
3-9:好了,下面开始输入程序代码: LONG CDispSimple::Add(LONG n1, LONG n2) 3-10:编译注册
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
return n1 + n2;
}
BSTR CDispSimple::Upper(LPCTSTR str)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CString strResult(str);
strResult.MakeUpper();
return strResult.AllocSysString();
}
更多内容请看PCdog.com--.NET实用开发 .NET应用研究专题
