CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  VCL组件使用和开发

(VC6.0下编译的控件的属性与方法)能否在C++ Builder 6调用,或者说如何封装实现

楼主1981lhb(小波)2003-06-04 11:57:15 在 C++ Builder / VCL组件使用和开发 提问

我在VC   6下面做了一个产品的控件,并且能很好的使用,我想将它移值到C++   Builder6中,不是简单的将源码复制过来重新编译  
  我能不能在C++   Builder   6下直接做一个控件将VC下的控件包好,从而能调用它的属性与方法 问题点数:0、回复次数:14Top

1 楼lanren_me(阿波)回复于 2003-06-04 12:36:32 得分 0

建成active或dllTop

2 楼yingyys(鹰)回复于 2003-06-04 12:40:48 得分 0

做成activex控件吧Top

3 楼gjgj3368(冷面修罗)回复于 2003-06-04 12:57:00 得分 0

对,做成activex控件Top

4 楼ThinkX(秋天的树)回复于 2003-06-04 13:25:33 得分 0

做成activex控件,在import时,bcb会为你自动生成封装代码。  
  如果用到了mfc,在bcb和vc之间的源代码几乎是不可移植的。Top

5 楼1981lhb(小波)回复于 2003-06-04 13:46:27 得分 0

做成ActiveX控件,具体步骤如何,可否详细一点,谢谢!  
  可不可以在C++   Builder中做一个控件,将原来的控件(VC下开发)包进来,从而可以直接调用它的属性与方法.Top

6 楼1981lhb(小波)回复于 2003-06-04 14:32:18 得分 0

或许是我说的不够清楚,是这样的:我在VC   6下做了一个产品控件,  
  而我要在C++   Builder下用到这个控件,只有控件没有源码,我该如何调用该控件的属性和方法,请各位高手指教!Top

7 楼1981lhb(小波)回复于 2003-06-05 12:21:30 得分 0

我已做成ActiveX控件,但是编译的时有如下三处错误  
  下面我给出错误的地方:      
   
  STDMETHODIMP   TActCardDevXImpl::get_OleObject(VARIANT*   Value)  
  {  
  try  
      {  
        *Value   =   (TVariant)(m_VclCtl->OleObject);(2)  
      }  
      catch(Exception   &e)  
      {  
          return   Error(e.Message.c_str(),   IID_IActCardDevX);  
      }  
      return   S_OK;  
  };  
  ......  
  STDMETHODIMP   TActCardDevXImpl::GetPropDisplayString(long   DispID,  
      BSTR*   Value)  
  {  
      try  
      {  
      *Value   =   m_VclCtl->GetPropDisplayString(DispID);(2)  
      }  
      catch(Exception   &e)  
      {  
          return   Error(e.Message.c_str(),   IID_IActCardDevX);  
      }  
      return   S_OK;  
  };  
  .......  
  STDMETHODIMP   TActCardDevXImpl::SetPropDisplayString(long   DispID,  
      BSTR   Value)  
  {  
      try  
      {  
      m_VclCtl->SetPropDisplayString(DispID,   Value);  
      }  
      catch(Exception   &e)  
      {  
          return   Error(e.Message.c_str(),   IID_IActCardDevX);(3)  
      }  
      return   S_OK;  
  };  
   
  [C++   Error]   ActCardDevImpl1.cpp(200):   E2015   Ambiguity   between   '_fastcall   Variant::operator   TVariant()'   and   'TVariant::TVariantT(const   Variant   &)'  
  [C++   Error]   ActCardDevImpl1.cpp(328):   E2034   Cannot   convert   'AnsiString'   to   'wchar_t   *'  
  [C++   Error]   ActCardDevImpl1.cpp(609):   E2451   Undefined   symbol   'e'  
  请各位高手指教,到时一定给分,急急急!!!!Top

8 楼SeekTruth(鹤舞白沙)回复于 2003-06-06 21:43:15 得分 0

 
   
      关注。  
   
      我也碰到这个问题,开始以为是用了MFC,后来全部用ATL还是报一大堆错。  
  Top

9 楼Lewolf(无名)回复于 2003-06-06 22:17:05 得分 0

错误信息已经非常明确了,这些都是基本的技能,象什么AnsiString和WideString的转换、命名空间的混淆等的,我懒得详细解释了。  
  Top

10 楼Behard(我爱天安门)回复于 2003-06-12 20:37:23 得分 0

学习  
   
  -----------------------------------  
  什么时候有时间、有朋友一起去踢球呢?  
  Top

11 楼888888888888(888888888888)回复于 2003-06-13 12:39:33 得分 0

关注Top

12 楼1981lhb(小波)回复于 2003-06-13 15:00:17 得分 0

谢谢各位的指教,不过我还是没有搞定,可能是基础太差,问一个简单的,通过继承VC中的控件,在C++   Builder   6中添加一个方法,如何实现,我在filename.cpp加入实现代码,在.h加入了一个声明,结果调用的时候找不到该方法,请问如何在控件程序中添加一个新的方法,不是通过filename.tlb添加...获得答案后将结贴.Top

13 楼1981lhb(小波)回复于 2003-06-20 11:37:15 得分 0

请   Lewolf(李狼)   兄提供更详细的帮助!谢谢Top

14 楼1981lhb(小波)回复于 2003-07-23 10:39:32 得分 0

期待大家的帮助!Top

相关问题

  • C++ builder 中有象VC中CList的那种封装链表吗?
  • C++? VC++? C++ Builder?
  • VC和C++Builder
  • 在C++Builder中调用没有被宝兰封装的API怎么办?
  • C++builder的工程中如何使用一个自己封装的类
  • VB、Delphi、C++Builder、VC++之争!
  • vc++好还是c++builder好??
  • VC++和C++BUILDER哪个好
  • VC++ 和 C++ builder的冲突!!
  • vc++和c++ builder 比较

关键词

  • c++
  • c++ builder
  • 控件
  • 属性
  • vc
  • activex
  • c++builder
  • 调用
  • tactcarddevximpl
  • vclctl

得分解答快速导航

  • 帖主:1981lhb

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

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