首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

SetPortA函数的Obj对象找不到,该如何处理

2013-01-07 
SetPortA函数的Obj对象找不到已经将控件的sources路径加入到Libary?path。编译的时候没问题,在链接的时候:S

SetPortA函数的Obj对象找不到
已经将控件的sources路径加入到Libary?path。
编译的时候没问题,在链接的时候:
SetPortA函数的obj对象找不到:
[Linker?Error]?Unresolved?external?'__fastcall?Cport::TCustomComPort::SetPortA

(const?System::AnsiString)'?referenced?from?E:\BCB_JIN\TESTCOM\TESTCOM.OBJ


在网上搜索了一下,看到:
解决办法:找到以下三句话:

procedure SetPort(const Value: TPort);    //1 
property Port: TPort read FPort write SetPort;  //2 
procedure TCustomComPort.SetPort(const Value: TPort);  //3

改成:
procedure SetPortA(const Value: TPort);
property Port: TPort read FPort write SetPortA;
procedure TCustomComPort.SetPortA(const Value: TPort);


在我的项目中:
//我在 Cport.hpp 里面只找到1,2.还有3找不到

line 375: void __fastcall SetPort(const AnsiString Value);  //1 
line 477: __property AnsiString Port = {read=FPort, write=SetPort};  //2 
//3 找不到  


[解决办法]
这是C++?
[解决办法]
你这个是vc引用delphi写的第三方控件或动态库吧,你声明的代码怎么写的啊?
[解决办法]
你这个Port不是TPort类型吗,你怎么直接给赋值"COM2"啊?
[解决办法]
网上的意思是:你在ComPort源码中找到那些,然后改了重编译。
[解决办法]
这个错误,是典型的实现部分没有找到。

你得在C++Builder中正确安装该组件,然后再使用。检查一下代码中,有没有
#pragma link "xxx.lib"

这个xxx.lib就是你的ComPort组件对应的那个lib文件。
[解决办法]
引用:
在程序中是 #pragma link "CPort";


恩,有这一句应该就可以了撒。

热点排行