COM 组件设计与应用(十)——IDispatch 接口 for VC.NET

来源: 作者: 2007-10-24 出处:pcdog.com

.net  jsp  office  解决方案  快捷键  
上一页 1 2 3 4 5 6 7 8 下一页 

  基类 一定要从 CComTarget 派生呀,只有它才提供了 IDispatch 的支持

  自动化 - 无 表示不支持自动化,你要选择了它,那就白干啦

  自动化 - 自动化 支持自动化,但不能被直接实例化。后面在讲解多个 IDispatch 的时候就用到它了,现在先不要着急。

  自动化 - 可按类型ID创建 一定要选择这个项目,这样我们在后面的调用中,VB就能够CreateObject(),VC就能够CreateDispatch()对组件对象实例化了。注意一点,这个 ID 其实就是组件的 ProgID 啦。

  3-6:选择接口,添加函数

COM 组件设计与应用(十)——IDispatch 接口 for VC.NET(图五)

  3-7:添加函数。我们要写一个整数加法函数Add()。

COM 组件设计与应用(十)——IDispatch 接口 for VC.NET(图六)
点击查看大图

  3-8:再增加一个转换字符串大小写的函数 Upper()。

COM 组件设计与应用(十)——IDispatch 接口 for VC.NET(图七)
点击查看大图

  3-9:好了,下面开始输入程序代码: LONG CDispSimple::Add(LONG n1, LONG n2)
{
  AFX_MANAGE_STATE(AfxGetStaticModuleState());
  return n1 + n2;
}
BSTR CDispSimple::Upper(LPCTSTR str)
{
  AFX_MANAGE_STATE(AfxGetStaticModuleState());
  CString strResult(str);
  strResult.MakeUpper();
  return strResult.AllocSysString();
}
  3-10:编译注册


更多内容请看PCdog.com--.NET实用开发  .NET应用研究专题
上一页 1 2 3 4 5 6 7 8 下一页 
上一篇:COM组件设计与应用(十四)——事件和通知(vc.net)
下一篇:COM 组件设计与应用(六)——用 ATL 写第一个组件(vc.net)