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

Nebula
|
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
|
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
|
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 WINDOWSKaid - 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
|
Merci, je l'imprime puis je cours passer cette fichue épreuve :p
|
|
jeudi 15 mai 2003 à 16:31:47 |
Re : utilisation d'OLE

Nebula
|
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
|
#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
|
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
|
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
|
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
|
|
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
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087 RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|