Bonjour,
je viens de découvrir Qt Creator permettant de faire de belles librairies dynamiques (pardon "bibliothèques")

j'ai donc créé une belle dll possédant un export (normalement?)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
class QTSHAREDLIBRARYSHARED_EXPORT QtSharedLibrary {
public:
    QtSharedLibrary();
};
QTSHAREDLIBRARYSHARED_EXPORT void writeSimple() {
    std::cout << "Qt write this" << std::endl;
}
Dans mon programme je charge correctement la dll (avec LoadLibrary())
mais je ne peux pas charger la fonction writeSimple.

Problème de différence entre une dll Qt et une dll C++ classique ?
Faut il obligatoirement charger la dll Qt depuis un programme Qt ?
Peut être que mon code est faux aussi... :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
HINSTANCE hLib = NULL;
hLib = LoadLibrary(" chemin vers ma dll qt"); // non null !
 
typedef void (*LPFNDLLfoo)(void);
LPFNDLLfoo m_foo;
 
// ici m_foo retourne toujours null
m_foo = (LPFNDLLfoo) GetProcAddress(hLib,"writeSimple"); 
 
if(m_foo!= null)
   m_foo(); // on ne passe ici !
Merci !