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

COM对象作为结构成员不能初始化???

楼主csdnlanser(枪兵)2005-06-03 23:44:50 在 VC/MFC / ATL/ActiveX/COM 提问

 
   
  _RecordsetPtr   类型的变量   record可以用    
  record.CreateInstance(__uuidof(RecordSet));初试化    
   
  如果在一个结构里    
  typedef   struct   tagRecordSet    
  {    
  BOOL   m_bInit;    
  BOOL   m_bOpen;    
  _RecordsetPtr   m_Record;    
  tagRecordSet()    
  {    
  m_bInit   =   FALSE;    
  m_bOpen   =   FALSE;    
  m_Record   =   NULL;    
  }    
  ~tagRecordSet()    
  {    
  if   (   m_bOpen   )    
  m_Record->Close();    
  if   (   m_bInit   )    
  m_Record->Release();    
  }    
  }RecordSet,   *PRecordSet;    
  RecordSet   recSet;    
  recSet.m_Record.CreateInstance(__uuidof(RecordSet));编译的时候说    
  error   C2787:   'tagRecordSet'   :   no   GUID   has   been   associated   with   this   object    
  这时为啥呢,怎么解决呢    
  如果  
  _RecordsetPtr     &record   =   m_pRecordset[i].m_Record;  
  record.CreateInstance(__uuidof(Recordset));  
  这样是可以编译通过,但运行程序退出的时候出现析构错误  
   
  对了com初始化我是用  
  ::CoInitializeEx作的 问题点数:100、回复次数:3Top

1 楼sinall()回复于 2005-06-04 08:58:33 得分 100

应该是:  
  recSet.m_Record.CreateInstance(__uuidof(Recordset));  
  看仔细了:  
  (__uuidof(Recordset)中的是:“Recordset”而不是“RecordSet”  
  Top

2 楼xxrl(孔曰成仁,孟曰取媳妇-->她太有才了)回复于 2005-06-06 08:23:09 得分 0

楼上正解!楼主应该看看recordset中在COM中的定义Top

3 楼dawndu(东南飞)回复于 2005-06-06 23:04:26 得分 0

呵呵,那个是vc编译器用类型库生成的,在tlh中,大小写敏感的Top

相关问题

  • 请教:为什么成员对象(member class object)一定要用成员初始化表来进行初始化?
  • 如何对结构数组型类成员进行初始化?
  • 请教: 如何初始化const成员结构体!!!
  • 请问类的成员是对象数组时,该如何初始化呢?
  • 如何在vc中初始化类成员变量中的结构数组
  • 如何初始化自定义类中的静态结构成员变量???
  • 成员的初始化
  • 请问如何初始化静态类成员或静态结构成员,应该不能用new的
  • 怎样初始化一个类的成员变量(是一个结构,表示圆)
  • c++里用new动态分配的结构体对象如何进行初始化???

关键词

  • tagrecordset
  • recordset
  • uuidof
  • record
  • bopen
  • binit
  • recset
  • recordsetptr
  • createinstance

得分解答快速导航

  • 帖主:csdnlanser
  • sinall

相关链接

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

广告也精彩

反馈

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