我有一个 Com 对象,从 DataModule 设置/创建/工作。
从应用程序创建/运行/释放数据模块没有问题。
但是第一次将数据模块放入 DLL 工作正常,运行 com 对象等。但是在没有重新启动应用程序的情况下进行了几次调用后,出现了这个错误。
错误信息图片 http://darkaxi0m.name/so/errormessage.GIF
应用程序中有一些代码,所以我不能全部发布,我在应用程序和 Dll 中都尝试了 MadExcept,但没有运气。IDE 在似乎没有多大帮助的地方中断......
替代文字 http://darkaxi0m.name/so/cpubreak.gif
这是处理 DataModule 的代码,在两个测试中的应用程序和 Dll 中使用了相同的函数
function GetAmount( Amount : integer; var Info: PChar): integer; stdcall;
var
tempInfo: string;
workerDM : TworkerDM;
begin
Result := 0;
workerDM := TworkerDM.Create(nil);
try
tempInfo:= Info;
Result := workerDM.GetAmount(Amount, tempInfo);
StrPCopy(Info, tempInfo);
finally
workerDM.Free;
end;
end;
我想责怪 Ole 对象,但它在 Dll 中运行良好
我什至不知道从哪里开始寻找。