begin process at 2012 05 30 10:34:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

API

 > 

utilisation d'OLE


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

utilisation d'OLE

jeudi 15 mai 2003 à 10:35:27 | utilisation d'OLE

Nebula

Membre Club
Bonjour à tous !

Je dois utiliser (un peu contre mon gré) l'API OLE pour lier des fichiers bitmap à un controle richedit, mais je ne sais pas du tout par où commencer, je suis un peu perdu et l'aide m'est aussi cristalline que le maniscrit d'Einstein sur la théorie de la relativité...

J'ai donc deux questions, principalement :

1) C'est quoi une interface OLE ? D'après un code source trouvé sur codeguru, j'aurais besoin d'implémenter IDataObject et IUnknown mais je ne sais même pas ce que c'est :s

2) Le code que j'ai trouvé est en C++, suis je obligé d'utiliser C++ pour utiliser OLE ou puis je le faire en C ?

Merci d'avance :)
jeudi 15 mai 2003 à 10:41:26 | Re : utilisation d'OLE

BruNews

Administrateur CodeS-SourceS
A cela je peux repondre chouia. Rassure toi, C++ et ses classes n'est requis absolument nulle part, tu peux tout faire en C.
Faut que tu commences la doc au debut de COM pour comprendre les pointeurs d'interface, ils implementent des proprietes et des methodes.
Je crois qu'il y a eu source de publiee sur comment creer des raccourcis, cela te donnera une idee. Si tu ne trouves pas l'exemple je t'en passerai un.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Bonjour à tous !
>
> Je dois utiliser (un peu contre mon gré) l'API OLE pour lier des fichiers bitmap à un controle richedit, mais je ne sais pas du tout par où commencer, je suis un peu perdu et l'aide m'est aussi cristalline que le maniscrit d'Einstein sur la théorie de la relativité...
>
> J'ai donc deux questions, principalement :
>
> 1) C'est quoi une interface OLE ? D'après un code source trouvé sur codeguru, j'aurais besoin d'implémenter IDataObject et IUnknown mais je ne sais même pas ce que c'est :s
>
> 2) Le code que j'ai trouvé est en C++, suis je obligé d'utiliser C++ pour utiliser OLE ou puis je le faire en C ?
>
> Merci d'avance :)
jeudi 15 mai 2003 à 11:04:41 | Re : utilisation d'OLE

Nebula

Membre Club
Hum, une recherche sur OLE et COM m'a donné un jeu de cartes (?) et une réponse de ta part sur le pilotage de Word via OleAutomation, mais rien de bien probant :(

Je vais lire la section COM de win32.hlp, si tu pouvais me préparer quelques exemples (simples !!! lol) d'utilisation ce serait sympa :)

Arf faut pas que j'oublie le BTS d'éco droit aussi... Je reviens vers 16h je pense ! Merci à toi :)
jeudi 15 mai 2003 à 11:19:56 | Re : utilisation d'OLE

Kaid

Voici l'URL de ma source sur la gestion des raccourcis Windows dont parlait BruNews:
KLINK - CLASSE DE GESTION DES LIENS WINDOWS

Kaid - kaid.fr.st

-------------------------------
Réponse au message :
-------------------------------

> Hum, une recherche sur OLE et COM m'a donné un jeu de cartes (?) et une réponse de ta part sur le pilotage de Word via OleAutomation, mais rien de bien probant :(
>
> Je vais lire la section COM de win32.hlp, si tu pouvais me préparer quelques exemples (simples !!! lol) d'utilisation ce serait sympa :)
>
> Arf faut pas que j'oublie le BTS d'éco droit aussi... Je reviens vers 16h je pense ! Merci à toi :)
jeudi 15 mai 2003 à 11:26:18 | Re : utilisation d'OLE

Nebula

Membre Club
Merci, je l'imprime puis je cours passer cette fichue épreuve :p
jeudi 15 mai 2003 à 16:31:47 | Re : utilisation d'OLE

Nebula

Membre Club
hum j'ai lu ta source ainsi que le site dont tu t'es inspiré et j'ai pas tout compris, enfin sur le fond oui mais le C++ m'ennuie... faut pas oublier que j'ai appris que le C, et encore depuis pas longtemps :p

jvais essayer d'adapter tout çà mais je doute du résultat, personne a un exemple d'utilisation en C ? :(
jeudi 15 mai 2003 à 20:28:06 | Re : utilisation d'OLE

BruNews

Administrateur CodeS-SourceS
#include <windows.h>
#include <shlobj.h>

char *szappname = "Shortcut";

int __stdcall CreateShortcut(char* szflSrc, char* szLink, char *szTooltip)
{
IShellLink* psl;
HANDLE hheap;
WORD* pwsz;
IPersistFile* ppf;
int bOK;
if(CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (LPVOID*) &psl)) return 0;
hheap = GetProcessHeap(); bOK = 0;
if((pwsz = (WORD*) HeapAlloc(hheap, 0, MAX_PATH*2)) == 0) goto outPsl;
if(psl->QueryInterface(IID_IPersistFile, (LPVOID *) &ppf)) goto outHeap;
psl->SetPath(szflSrc); psl->SetDescription(szTooltip);
if(MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, szLink, -1, pwsz, MAX_PATH))
bOK = (ppf->Save(pwsz, TRUE) == 0);
ppf->Release();
outHeap: HeapFree(hheap, 0, pwsz);
outPsl: psl->Release();
return bOK;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, PSTR, int)
{
if(CoInitialize(NULL)) return 0;
if(!CreateShortcut("D:\\Sfmg\\AccesSFMG.doc", "D:\\AccesSFMG.lnk", "UN TEST"))
MessageBox(NULL, "Shortcut raté", szappname, MB_ICONEXCLAMATION);
CoUninitialize();
return 0;
}

Excuse j'avais pas vu ton retour. Change les noms de fichiers dans WinMain();
Tout est en C et API, va bon ?
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> hum j'ai lu ta source ainsi que le site dont tu t'es inspiré et j'ai pas tout compris, enfin sur le fond oui mais le C++ m'ennuie... faut pas oublier que j'ai appris que le C, et encore depuis pas longtemps :p
>
> jvais essayer d'adapter tout çà mais je doute du résultat, personne a un exemple d'utilisation en C ? :(
jeudi 15 mai 2003 à 21:32:03 | Re : utilisation d'OLE

Nebula

Membre Club
Yes c'est excellent ! Je vais étudier çà de près, merci pour ton aide, et merci à Kaid aussi :)
jeudi 15 mai 2003 à 22:47:56 | Re : utilisation d'OLE

Nebula

Membre Club
Hum, pas si génial que çà :s

J'obtiens çà avec GCC:


test.c: In function `CreateShortcut':
test.c:14: incompatible type for argument 1 of `CoCreateInstance'
test.c:14: incompatible type for argument 4 of `CoCreateInstance'
test.c:17: structure has no member named `QueryInterface'
test.c:18: structure has no member named `SetPath'
test.c:18: structure has no member named `SetDescription'
test.c:20: structure has no member named `Save'
test.c:21: structure has no member named `Release'
test.c:23: structure has no member named `Release'
test.c: In function `WinMain':
test.c:27: parameter name omitted
test.c:27: parameter name omitted
test.c:27: parameter name omitted


Et çà avec BCC:


test.c:
Error E2342 test.c 14: Type mismatch in parameter 'rclsid' (wanted 'const _GUID
* const', got '_GUID') in function CreateShortcut
Error E2342 test.c 14: Type mismatch in parameter 'riid' (wanted 'const _GUID *
const', got '_GUID') in function CreateShortcut
Error E2451 test.c 17: Undefined symbol 'QueryInterface' in function CreateShort
cut
Error E2451 test.c 18: Undefined symbol 'SetPath' in function CreateShortcut
Error E2451 test.c 18: Undefined symbol 'SetDescription' in function CreateShort
cut
Error E2451 test.c 20: Undefined symbol 'Save' in function CreateShortcut
Error E2451 test.c 21: Undefined symbol 'Release' in function CreateShortcut
Error E2451 test.c 23: Undefined symbol 'Release' in function CreateShortcut
Warning W8057 test.c 25: Parameter 'szflSrc' is never used in function CreateSho
rtcut
Warning W8057 test.c 25: Parameter 'szTooltip' is never used in function CreateS
hortcut
Error E2287 test.c 28: Parameter 2 missing name in function WinMain
Error E2287 test.c 28: Parameter 3 missing name in function WinMain
Error E2287 test.c 28: Parameter 4 missing name in function WinMain
Warning W8057 test.c 34: Parameter 'hInstance' is never used in function WinMain


Bon les noms omis, c'est pas un drame, mais le reste :s
jeudi 15 mai 2003 à 23:13:57 | Re : utilisation d'OLE

BruNews

Administrateur CodeS-SourceS
rien de tel que VS pour faire du win32.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Hum, pas si génial que çà :s
>
> J'obtiens çà avec GCC:
>
>

> test.c: In function `CreateShortcut':
> test.c:14: incompatible type for argument 1 of `CoCreateInstance'
> test.c:14: incompatible type for argument 4 of `CoCreateInstance'
> test.c:17: structure has no member named `QueryInterface'
> test.c:18: structure has no member named `SetPath'
> test.c:18: structure has no member named `SetDescription'
> test.c:20: structure has no member named `Save'
> test.c:21: structure has no member named `Release'
> test.c:23: structure has no member named `Release'
> test.c: In function `WinMain':
> test.c:27: parameter name omitted
> test.c:27: parameter name omitted
> test.c:27: parameter name omitted
>

>
> Et çà avec BCC:
>
>

> test.c:
> Error E2342 test.c 14: Type mismatch in parameter 'rclsid' (wanted 'const _GUID
> * const', got '_GUID') in function CreateShortcut
> Error E2342 test.c 14: Type mismatch in parameter 'riid' (wanted 'const _GUID *
> const', got '_GUID') in function CreateShortcut
> Error E2451 test.c 17: Undefined symbol 'QueryInterface' in function CreateShort
> cut
> Error E2451 test.c 18: Undefined symbol 'SetPath' in function CreateShortcut
> Error E2451 test.c 18: Undefined symbol 'SetDescription' in function CreateShort
> cut
> Error E2451 test.c 20: Undefined symbol 'Save' in function CreateShortcut
> Error E2451 test.c 21: Undefined symbol 'Release' in function CreateShortcut
> Error E2451 test.c 23: Undefined symbol 'Release' in function CreateShortcut
> Warning W8057 test.c 25: Parameter 'szflSrc' is never used in function CreateSho
> rtcut
> Warning W8057 test.c 25: Parameter 'szTooltip' is never used in function CreateS
> hortcut
> Error E2287 test.c 28: Parameter 2 missing name in function WinMain
> Error E2287 test.c 28: Parameter 3 missing name in function WinMain
> Error E2287 test.c 28: Parameter 4 missing name in function WinMain
> Warning W8057 test.c 34: Parameter 'hInstance' is never used in function WinMain
>

>
> Bon les noms omis, c'est pas un drame, mais le reste :s

1 2

Cette discussion est classée dans : code, utiliser, utilisation, trouvé, ole


Répondre à ce message

Sujets en rapport avec ce message

Synthèse vocale [ par Rafiki39 ] Bonjour à tous ! Sur le site j'ai trouvé le code deNarrateur qui utilise une synthèse vocale en français. Pour l'une de mes applications code source ACP [ par infodaoudi ] Bonjour,je cherche le code source de L'ACP (analyse en composante principale) en C ou C++, j'ai cherché sur le net et j'ai trouvé le code en matlab, q Utilisation de wiiuse [ par iko333 ] Bonjour, Je souhaite utiliser wiiuse avec dev c++. Le problème est que je ne parvient même pas a compiler l'exemple. En fait je suis complètement per utiliser code source C++ par VB [ par tikila ] salut tout le monde!Ma question en claire est comment etablir une liaison entre un code source implementé en c++( visual c++) et vb.On m'a parlé de DL utilisation du LaTeX sur MSN [ par marcelitoast ] Bonjour tout le monde,Je ne connais que très peu vb et un tout petit peu (si je n'ai pas tt oublié :)) le C. J'aimerais utiliser le LaTeX sur MSN donc Utilisation de tab dans les editbox [ par Anacr0x ] Voila, en fait, kan on crée un projet avec vc++, on peut utiliser la touche tab pour naviguer + facilement dans le prog. Mais kan on utilise dev-c++, utilisation d'une DLL perso sous Borland C++ [ par thmatew ] Salut a tous,Je vous écrit car j'ai un gros souci : je n'arrive pas à utiliser une DLL .NET que j'ai creée, elle fonctionne parfaitement avec Visual S probléme dans l'utilisation de mysql dans gcc [ par moooonaaaa ] Salem j'ai un probléme dans mon code. le code désigne l'erreur suivant "implicit declaration of function 'mysqlquery'" la ligne dans le code qui provo Utiliser OLE COM dans une DLL [ par andrebernard ] Bonjour à tousVoila, je suis un débutant de chez débutant, je veux dire par la que c'est la premeire fois que je lance visual C++ 6.C'est un vieux rev Utilisation d'une dll c# dans du code c++ [ par renyone ] Bonjour à tous!J'espère que ce sujet ne fera pas doublon.J'aimerais pouvoir utiliser une dll que j'ai développée en c# dans du code C++ natif. Je n'ai


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales