CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  ATL/ActiveX/COM

vc怎么调用vb写的com

楼主billyofnk(billyofnk)2005-09-16 15:22:15 在 VC/MFC / ATL/ActiveX/COM 提问

vc怎么调用vb写的com,谢谢 问题点数:100、回复次数:5Top

1 楼happyparrot(快乐鹦鹉)回复于 2005-09-16 15:29:20 得分 0

COM由谁写的并不要紧。Top

2 楼happyparrot(快乐鹦鹉)回复于 2005-09-16 15:30:06 得分 100

以下是调用组件的例程:  
  void   CTest2Dlg::OnButton1()    
  {  
  //   TODO:   Add   your   control   notification   handler   code   here  
  HRESULT   hresult;  
          CLSID   clsid;  
   
  CoInitialize(NULL);        
   
  //初始化COM接口  
   
  hresult=CLSIDFromProgID(OLESTR("test.dialogs"),   &clsid);          
   
  //得到组件的CLSID                              
   
  _Dialogs   *t;                  
   
  //这就是我们在PRJADO.DLL中定义的类  
   
  hresult=CoCreateInstance(clsid,NULL,CLSCTX_INPROC_SERVER,__uuidof(_Dialogs),(LPVOID   *)   &t);  
   
  //初始化CLSADO,CoCreateInstance()的第一个参数是对象的CLSID(类代码),这个128位的编码唯一地标识了组件服务,它的路径和运行参数等信息都放在系统注册表中;第二个参数一般情况下设为NULL;第三个参数用来指明对象的运行环境,如远程或本地,此处设为CLSCTX_INPROC_SERVER,标明是服务组件是一个DLL;第四个参数指明用来与对象通信接口的ID,这也是一个128位的编码;第五个参数是用来接收对象的接口指针。  
   
  if(FAILED(hresult))  
  {  
                AfxMessageBox("初始化服务组件失败");  
                return;  
  }            
   
  //如果初始化失败,弹出提示对话框后退出程序  
  CString   str;  
   
          (_bstr_t)str=t->ShowDialog((_bstr_t)("abc"),true);    
          AfxMessageBox((CString)str);  
  //调用初始化函数  
   
  //               t->ado_add("从VC调用组件")   ;      
   
  //调用增加记录函数  
   
  //t->ado_UnInit   ();  
   
  //调用关闭连接函数  
   
  t->Release();        
   
  //释放接口指针  
   
  CoUninitialize();      
   
  //     关闭COM库的联接  
   
  AfxMessageBox("调用服务组件完成");  
   
   
  }Top

3 楼billyofnk(billyofnk)回复于 2005-09-16 16:07:12 得分 0

_Dialogs类在那儿声明的?如果是倒入类型库怎么导入呢Top

4 楼wshcdr(dd)回复于 2005-09-16 17:32:51 得分 0

呵呵,不知道VB写的COM是不是都是支持分发接口的  
  谁能回答我?Top

5 楼wshcdr(dd)回复于 2005-09-17 16:33:26 得分 0

_Dialogs类在那儿声明的?如果是倒入类型库怎么导入呢  
  //////////////////////////////////  
  直接去导VB生成的那个DLLTop

相关问题

  • vb调用vc编写的com问题
  • 如何在VC中调用VB开发的COM(ActiveX Dll)?
  • VB中的Com组件如何在VC中调用???
  • 急!! 如何在VC++中调用 VB COM组件, 谢谢
  • VC作的COM用VB如何调用,高分求教
  • 在delphi中如何调用COM组件(用vb或vc写的)
  • vb调用vc编的activex
  • vb调用vc++的dll
  • vc调用vb的dll
  • 用vc做了个automation的com组件,用mfc可以调用,但是用vb调用不了

关键词

  • com
  • 组件
  • 接口
  • 函数
  • vc
  • vb
  • dll
  • null
  • 调用
  • 初始化

得分解答快速导航

  • 帖主:billyofnk
  • happyparrot

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo