hamzamalek
Messages postés15Date d'inscriptionmercredi 5 août 2009StatutMembreDernière intervention21 juillet 2011
-
21 juil. 2011 à 11:41
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024
-
21 juil. 2011 à 20:57
Bonjour,
je suis entrain de réaliser un outil qui traite des fichiers Excel,l'exécution des mes algorithmes se fait dans un Thread alors j'ai eu cette Exception.
Impossible d'effectuer un cast d'un objet COM de type 'Microsoft.Office.Interop.Excel.WorkbookClass' en type d'interface 'Microsoft.Office.Interop.Excel._Workbook'. Cette opération a échoué, car l'appel QueryInterface sur le composant COM pour l'interface avec l'IID '{000208DA-0000-0000-C000-000000000046}' a échoué en raison de l'erreur suivante : L'application a appelé une interface qui était maintenue en ordre pour une thread différente. (Exception de HRESULT : 0x8001010E (RPC_E_WRONG_THREAD)).
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 21 juil. 2011 à 20:57
Bonjour,
Voir si tu as une propriété InvokeRequired sur ta classe ou au pire, si ton objet est créé à partir du thread principal, sur un des composants d'une form.
Ensuite, tu peux faire :
MonControle.Invoke(New MonDelegue(AddressOf MaFonction))