Thread sous delphi Arg!!!

Thread sous delphi Arg!!! - Programmation

Marsh Posté le 20-08-2001 à 16:22:26    

Salut,le message et long mais pour les flemmards qui sont méga doué je simplifie ma question en demandant
 
Est-il possible d'appeler une macro VBA a partir d'un thread fait en delphi. Avec un programme a la con sans thread j'ai essayé c'est possible, mais avec une thread j'arrive pas. Voila, pour les autres voici mon problème en détails :
 
J'ai créé un thread sous delphi qui va me permettre d'établir une liaison avec Excel avec le composant TExcelApplication. Ma classe s'appelle Excel et mon composant s'apelle Xl. J'ai un constructeur, ou j'initialise ma connexion avec excel, et une procédure Execute qui contient le code à executer une fois la connexion établie. Le probleme c'est que dans la procédure Execute je dois a un moment appeler l'exécution d'une macro vba faite en Excel avec cette commande :  
 
Xl.run('le nom de ma macro');
 et la j'ai une erreur d'execution au moment de l'ouverture de la macro (EOlEeXCEPTION AVEC le message : CoInitialize n'a pas été appelé). Le fichier contenant la macro et pourtant bien ouvert sous Excel.
 
J'ai alors essayé de mettre cette ligne de commande dans une procédure a part que j'ai appelé RunC, et d'appeler cette procédure à partir de mon Excel.Execute avec un  
synchronize(RunC);
 
Et là il me met l'erreur suivante :
EOleException avec le message :
 
Un appel sortant ne peut pas être effectué étant donné que l'application répartit un appel entrant synchrone.
 
En gros je comprend qui ne veut pas me lancer la macro vba parce que ca va entrainer l'apparition d'un autre processus gérer par Excel et indépendant de Delphi et ca va foutre la merde dans mon thread. Mais j'ai absoluement besoin d'executer une macro vba dans un thread Delphi.
 
Voila je vous remercie tous d'avance pour toutes les réponses que j'espere vous pourrez m'apporter.
 
:)

Reply

Marsh Posté le 20-08-2001 à 16:22:26   

Reply

Marsh Posté le 20-08-2001 à 17:11:08    

SVp c'est urgent Merci d'avance

Reply

Marsh Posté le 21-08-2001 à 09:01:07    

Au secour UP please

Reply

Marsh Posté le 21-08-2001 à 11:00:21    

up

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed