OVH Cloud OVH Cloud

CoCreateInstance Proprietere.

4 réponses
Avatar
mickeydisn
Bonjour

Voil=E0 mon pb.
Je souhaite cr=E9e une instance d'un programme Word a partir des
fonction :

CLSIDFromProgID(L"Word.Application", &clsid);
IUnknown* pUnk;

hr =3D ::CoCreateInstance( clsid, NULL, CLSCTX_LOCAL_SERVER
,IID_IUnknown, (void**) &pUnk);


Je rend l'application invisible et je realise mon traitement sur les
fichiers a l'aide des fonction COM


Sa Fonction bien sauf, lorsque j'ouvre Word a cote cela ne cr=E9e PAS
de nouveau process et je voie tout ce qui ce passe dans Word (ouverture
de fichier , fermeture ... )

Comment r=E9soudre ce probl=E8me.


Ps : je souhaite de plus pouvoir teste si le programme et d=E9j=E0 lancer
pour mon application y a t'il un moyen de donner un identifiant ou
une clef a ce processus et un moyen de le r=E9cup=E9rer


--
MickeyDisn

4 réponses

Avatar
Christian ASTOR
mickeydisn wrote:

Sa Fonction bien sauf, lorsque j'ouvre Word a cote cela ne crée PAS
de nouveau process et je voie tout ce qui ce passe dans Word (ouverture
de fichier , fermeture ... )

Comment résoudre ce problème.



Par ex en créant une instance temporaire avec CoCreateInstance() (Quit
et Release() à la fin)
Ca créera un autre process Winword.exe qui sera utilisé si on ouvre
manuellement un autre Word (du moins ça marche chez moi avec Word XP, XP
SP1)
(un peu similaire au problème de la KB188546)
Avatar
mickeydisn
Et dans ce cas j'ai 2 instance du programme ouver .. donc un qui me
saire a rein ..

pas top comme solution .

mais merci quand meme

--
mickeydisn
Avatar
Christian ASTOR
mickeydisn wrote:

Et dans ce cas j'ai 2 instance du programme ouver .. donc un qui me
saire a rein ..



Le 2ème exe sert à ce que celui en Automation ne soit pas utilisé,
puisqu'apparemment c'est ce que tu veux éviter...
(et c'est transparent visuellement)
Avatar
mickeydisn
Transparent ou mais dans le gestionaire des tache on voie 2 foie le
processu lancer ..

Enfin je vais quand meme teste faute de meiux ..

Merci

si vous voyer d'autre solution ..

--
Mickeydisn