Delphi编写的dll在C++Builder中的调用问题!
Delphi编写的dll源码如下:
library FSearch;
uses
SysUtils, Classes, FastSearch, DB, ADODB;
var
FastSearch1: TFastSearch;
{$R *.res}
function FastSearch(ADOQuery1: TADOQuery):String;stdcall;
var strSQL:String;
begin
strSQL:='';
FastSearch1.DataSet:=ADOQuery1;
if FastSearch1.Search() then
begin
strSQL:=FastSearch1.QueryCondition;
end;
Result:=strSQL;
end;
exports
FastSearch;
begin
end.
C++Builder中调用如下:
typedef AnsiString (GetValue)(TADOQuery*);
__declspec(dllimport) AnsiString __stdcall FastSearch(TADOQuery *adoQuery);
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HINSTANCE nDLL;
GetValue *theValue;
nDLL = LoadLibrary("FSearch.dll");
if(nDLL != NULL)
{
theValue = (GetValue*)GetProcAddress(nDLL, "FastSearch");
if(theValue != NULL)
Edit1->Text = (*theValue)(ADOQuery1);
}
FreeLibrary(nDLL);
}
//---------------------------------------------------------------------------
跟踪运行到Edit1->Text = (*theValue)(ADOQuery1);报错,也就是说调用Dll函数出错,请指教!
相关问题
- 请问 windows 优化大师 左边儿的那个导航条是用什么控件怎么做出来的呀?
- 长字符型使用
- 急急急,,,,,,,,,,,,,,,在线
- 200分求idhttp上传文件的方法。
- *********** chart 饼图 图例 排序 ***********
- 小问题很急!!!!!!!!!
- 子窗口问题
- delphi程序移植到Unix平台讨论.顶也有分.
- *** SQL Server数据导出及脚本生成的问题
- 紧急事件:如何控制对ListView第三列进行修改!!!
- 关于InstallShield的使用急急急!!!!3点前结贴
- 小数点取位子问题
- 一个带Panel的ListBox要怎么做?
- 请问哪位高手知道怎么将word、Excel文件转换成tif文件来发传真阿?
- label的caption的显示问题?
- 我在stringgrid中实现了多行显示,可是怎么才能让这些单元格自动改变高度,以显示多出来的行?
- 我需要在TTREEVIEW里面增加信息 我想让信息的某些字显示为红色 请问有办法实现吗
- 大量数据操作时,界面冻结,如何解决。
- 关于InstallShield急急急!!!!
- Delphi以前版本中的组件,在Delphi8还能用吗?