我有一個Com對象,安裝/創建/從DataModule工作。DELPHI應用程序錯誤與DLL在一個DLL
創建/運行/從應用程序釋放Datamodule可以解決問題。
但將數據模塊放入DLL中,第一次運行正常,運行com對象等。但在重新啓動應用程序後出現幾次調用後,出現此錯誤。
Error Message image http://darkaxi0m.name/so/errormessage.GIF
還有就是在App代碼票價位,所以我不能張貼這一切, 我已經試過MadExcept同時在應用程序和DLL,沒有運氣。在一個點的IDE休息似乎並沒有太大的幫助......
alt text 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
我不知所措,甚至想從哪裏開始尋找。
對不起,這是一個複製/粘貼和格式化爲stackoverflow受害者 – 2010-08-07 14:52:55
@Christopher:沒問題;我遇到了很多真實世界的代碼,這種方式錯了,導致很難發現錯誤。很高興你的代碼不會受到它的影響。 – 2010-08-17 15:43:11