第二次动态调用动态链接库后出问题---急!!!

Rabbit_Lap 2005-03-07 03:42:07
自己写了一个动态链接库,其实封装了一些开发过程中公用的涵数,对其中一个公用计算的涵数第一次调用正确.第二次调用失败!请各位大虾指导!调用代码如下:
Procedure CalculateTable(ADOConn : TADOConnection; aDataSet : TADODataSet; aTableName, aYear : PChar; GaugeMessage : TbsSkinGauge);
type
TCalculateTable = function(ADOConn : TADOConnection; aDataSet : TADODataSet; aTableName, aYear : PChar; GaugeMessage : TbsSkinGauge) : boolean;stdcall;
var
OneHandle : HMODULE;
CalculateTable : TCalculateTable;
begin
OneHandle := LoadLibrary('SharePolo.dll'); //动态载入DLL,并返回其句柄
try
if OneHandle = 0 then //载入不成功
DataModuleMain.bsSkinMessageMain.MessageDlg('无法加载公用动态库文件,请与管理员联系!', mtError, [mbOK], 0)
else
begin
//如果载入成功则获取CompactDataBase函数的地址
CalculateTable := GetProcAddress(OneHandle, PChar('CalculateTable'));
if @CalculateTable <> nil then
begin
if CalculateTable(ADOConn, aDataSet, aTableName, aYear, GaugeMessage) then
DataModuleMain.bsSkinMessageMain.MessageDlg('汇总计算字段值成功!', mtInformation, [mbOK], 0)
else
ShowErrorsMessage('汇总计算字段值失败!,详细信息如下:');
end
else
RaiseLastWin32Error;
end;
finally
FreeLibrary(OneHandle); //调用完毕释放DLL占用的资源
end;
end;
...全文
124 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
纯冰糖 2005-03-07
  • 打赏
  • 举报
回复
估计是找地址错误了

830

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧