Bonjour � tous,
J'ai un petit probl�me avec le pilotage d'Excel via un thread.
J'utilise en effet un thread que j'appelle pour lancer une feuille excel et r�cuperer des donn�es en temps r�el.
Le thread est donc sans arret en train de recuperer de la feuille!
Le probl�me intervient lorsque j'accede � la feuille et que je modifie la valeur d'une cellule. Le thread me renvoie une Ole Exception RPC_E_CALL_REJECTED.
Apr�s m'�tre renseign�, j'ai essay� de changer l'initialisation du thread en le d�clarant multi thread apartment gr�ce � la ligne:
::CoInitializeEx(NULL, COINIT_MULTITHREADED );
Alors qu'auparavant, j'utilisais ::CoInitialize(NULL). Ca me l�ve toujours une exception mais cette fois ci le message est RPC_E_SERVERCALL_RETRYLATER.
Donc apparemment le thread aime pas du tout que l'utilisateur touche � son instance d'excel en m�me temps que lui.
Le probl�me que lorsque j'utilisais exactement le meme programme dans le main thread, et cela marchait sans aucun soucis.
C'est ce qui me fait croire qu'il existe un moyen d'�viter la lev�e d'exception, mais n'�tant pas un sp�cialiste de MFC et COM, j'avoue je ne sais pas trop comment faire.
merci de votre aide
Partager