CyberPunk2020
Messages postés24Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention20 avril 2005
-
2 déc. 2004 à 16:43
cs_grandvizir
Messages postés1106Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention 3 septembre 2006
-
3 déc. 2004 à 18:24
Voila j'ai repris un MSAgent dont j'ai inclus le code dans un DLL, mais a chaque fois que je ferme la feneter du projet j'ai un plantage. Sachant que si je n'utilise aps la fonction de la DLL tout va bien.
La dll fait appel à un activeX est-ce que ça pourrait venir de là ?
Le code de la DLL
----------------------
Var
Peedy : IAgentCtlCharacterEX;
Agent1 : TAgent;
Procedure ChargeAgent;
Begin
// Créé le composant TAgent
Agent1 := TAgent.Create(nil);
Agent1.RaiseRequestErrors := True;
// Active l'agent
Agent1.Connected := True;
Agent1.Characters.Load('Peedy', 'Merlin.acs'); // chargement du personnage Peedy
// Peedy sera le nom utilisé pour "actionner" l'agent
Peedy := IAgentCtlCharacterEX(Agent1.Characters.Character('Peedy'));
Peedy.Show(False);
End;
Exports
ChargeAgent;
Le code dans l'application
--------------------------------
Var
Procedure ChargeAgent; external 'MSAgent.dll'
procedure TForm1.FormShow(Sender: TObject);
begin
ChargeAgent;
End;
J'ai essayé de le décharger avec un Agent.free dans une autre procedure de la DLL mais idem