[Qt-Win-MinGW] récupérer GetModuleHandle avec minGW/GCC

Résolu
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016 - 12 juin 2009 à 22:19
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016 - 14 juin 2009 à 16:04
Bonjour,
Je suis en train de porter les sources d'une interface d'une Dll purement windows en C++/Qt/MinGW. Je charge apparemment convenablement toutes les fonctions de la Dll, mais par contre, l'une d'entre elle a besoin d'un HINSTANCE sur l'application et une autre d'un HINSTANCE sur la dll elle-même.
En Qt, j'utilise QLibrary : difficile donc de récupérer le HINSTANCE sur la Dll. On m'a dit que charger la dll avec QLibrary, et la recharger juste une fois en local avec LoadLibrary standard devrait fonctionner opur rcupérer le module handle.
Par contre, c'est pour le HINSTANCE de l'application, il faudrait récupérer GetModuleHandle(NULL) sous MinGW. MinGW intègre par défaut qt_windows.h qui reprend déjà quelques types et fonctions spécifiques windows mais apparemment GetModuleHandle, qui se trouve apparemment dans Windowsbase.h n'y est pas :/
Quelqu'un saurait-il comment récupérer cette fonction GetModuleHandle ou équivalent sous MinGW ?

Merci

Hervé

8 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
14 juin 2009 à 10:56
Sinon, tu déclares juste la fonction et ca devrait marcher aussi :

#ifdef UNICODE
#define GetModuleHandle  GetModuleHandleW
#else
#define GetModuleHandle  GetModuleHandleA
#endif // !UNICODE

_____________________________________
Un éditeur de ressources gratuit pour Windows
3
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016
14 juin 2009 à 16:04
En fait, pour récupérer l'instance de l'application sous windows et peut-être multi-plateforme, Qt fournit la fonction qWinAppInst()...
j'ai trouvé ça en tombant par hasard dans qt_windows_defs.h ou quelques chose comme ça
3
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
14 juin 2009 à 10:46
Normalement avec MinGW tu peux inclure windows.h, ce n'est pas le cas?

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016
14 juin 2009 à 10:48
Euh, j'ai pas osé ça, j'avoue :)
je vais tester
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016
14 juin 2009 à 10:58
ouay mais GetModuleHandleW et GetModuleHandleA sont bien des fonction définies dans minGW ?
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
14 juin 2009 à 11:01
Il faut espérer que oui quand même cette fonction ne date pas d'hier

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016
14 juin 2009 à 11:18
Oh j'ai trouvé un pdf sympa, qui ne résout pas mon problème mais en tout cas, c'est un en rapport et intéressant
[www.thehackademy.net/madchat/coding/other/DropCRT.pdf Contourner l'utilisation de la CRT avec MinGW (hack GCC)]
0
RV2931 Messages postés 185 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 16 juillet 2016
14 juin 2009 à 11:19
www.thehackademy.net/madchat/coding/other/DropCRT.pdf
0
Rejoignez-nous