J'ai un objet Com, configurer/créer/travailler à partir d'un DataModule.Erreur d'application Delphi avec Ole dans une DLL
La création/l'exécution/la libération du module de données à partir d'une application ne pose aucun problème.
mais en mettant le module de données dans une DLL fonctionne bien la première fois, en exécutant l'objet com etc. mais après quelques appels sans redémarrer l'application, cette erreur apparaît.
Error Message image http://darkaxi0m.name/so/errormessage.GIF
Il y a un peu de prix de code dans l'application, donc je ne peux pas poster tout, j'ai essayé MadExcept dans l'application et dll, sans chance. Les pauses IDE à un point qui ne semble pas beaucoup d'aide ...
alt text http://darkaxi0m.name/so/cpubreak.gif
c'est le code qui gère la DataModule, la même fonction est utilisée dans l'application et la dll dans les deux tests
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;
je voudrais blâmer l'objet Ole, mais il fonctionne très bien de la dll
Je suis à une perte de penser même où commencer à chercher.
désolé qui a été victime de copier/coller et de formatage pour stackoverflow –
@Christopher: pas de problème; Je suis tombé sur beaucoup de code réel qui était mauvais de cette façon, causant très difficile de trouver des bugs. Sympa que ton code n'en souffre pas. –