Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème CoCreateInstance Propriété

4 réponses
Avatar
mickeydisn
Bon alors voil=E0
je suis entrain de d=E9veloppe une apli qui utilise les Automation.
J'utilise les applications word.application et exel application.


En r=E9sume mon application utiliser fonction de word et de exel pour
faire un traitement sur une liste de fichier. L'utilisateur ne doit
pas avoir d'interf=E9rence lorcequ'il utilise word ou exel ( -> mon
probl=E8me : il en a.).


Voil=E0 comment je lance l'initialise mes application.

----------------------------------------------------
{
IUnknown* pUnk;


// je r=E9cup=E8re le CLSID de l'appli
CLSIDFromProgID(L"Word.Application", &clsid);


// je cree une nouvelle application
hr =3D ::CoCreateInstance( clsid, NULL, CLSCTX_LOCAL_SERVER ,
IID_IUnknown, (void**)&pUnk);
if (FAILED(hr))
{
printf("Error in creating Word application instance\n");
Destroy();
return -1;
}

je me connecte sur l'application
hr =3D pUnk->QueryInterface(IID_IDispatch, (void**)&(this->main_app_));
if (FAILED(hr))
return -1;
}


------------------------------------------------------------------------


Ensuite j'utilise les fonction du service gr=E2ce a la fonction
Autowarp dispo sur la msdn

ex : je rend l'application invisible

hr =3D AutoWrap(DISPATCH_PROPERTYPUT, NULL, this->main_app_, L"Visible",
1, x);)



Alors mon pb :

Je souhaite que je processus lancer pas mon application me soit
propri=E9taire. Et ce net pas le cas :


--
Mickeydisn=20
Developeur C++

4 réponses

Avatar
mickeydisn
Personne pour un coup de main je seche toujour

--
Mickey
Avatar
Jerome
"mickeydisn" wrote in message
news:
Personne pour un coup de main je seche toujour



Parce que c'est pas clair.
Ca veut dire quoi "soit propriétaire" ?
L'executable que tu lances est sous ton compte.
Avatar
mickeydisn
Lorsque que je cree une automation Word ou Exel lance un process
"MSWORD.EXE" ou "MSEXEL.EXE". que je peut voire dans le gestionaire des
process.

Lorceque je lance word pour editer un text L'application ne cree pas de
nouveau process MSWORD.EXE pour mon application d'edition - Elle ce lie
au process deja Executer. De ce faite sur cette interface ce voie
l'ensemble des fonctions que mon application demande a MSWORD.

Exemple: lorceque dans mon Code Automation Word de mon application
j'ouvre un fichier .doc - Et que l'utilisateur a ouvert une fenetre
d'edition d'un fichier doc - Je voie le fichier s'ouvri sur
l'application d'edition - ce que le pose probleme !


Mon soucie de rendre le process MSWORD.EXE, utiliser par mon
application, Inacessible au autre programme.

--
Mickeydisn
Avatar
Christian ASTOR
mickeydisn wrote:

Lorceque je lance word pour editer un text L'application ne cree pas de
nouveau process MSWORD.EXE pour mon application d'edition - Elle ce lie
au process deja Executer. De ce faite sur cette interface ce voie
l'ensemble des fonctions que mon application demande a MSWORD.



Ben, c'est ce que je t'ai dit.
C'est la solution de MS.