-
link error sous vc++
Salut !
J'ai un petit probleme de compilation en C++. Je travail avec visual c++ express edition et lorsque je compile, le message d'erreur suivant apparait :
graph.obj : error LNK2028: unresolved token (0A000027) "public: static class FTIManager * __cdecl FTIManager::CreateGraphManager(int,wchar_t *,int (__cdecl*)(void *,char const *,char *,int),void *)" (?CreateGraphManager@FTIManager@@$$FSAPAV1@HPA_WP6AHPAXPBDPADH@Z1@Z) referenced in function "public: int __clrcall graph::h263Displayer(void)" (?h263Displayer@graph@@$$FQ$AAMHXZ)
graph.obj : error LNK2019: unresolved external symbol "public: static class FTIManager * __cdecl FTIManager::CreateGraphManager(int,wchar_t *,int (__cdecl*)(void *,char const *,char *,int),void *)" (?CreateGraphManager@FTIManager@@$$FSAPAV1@HPA_WP6AHPAXPBDPADH@Z1@Z) referenced in function "public: int __clrcall graph::h263Displayer(void)" (?h263Displayer@graph@@$$FQ$AAMHXZ)
Je suppose que c'est une erreur de link mais je ne parvient pas a l'enlever alors que j'ai pris soin de préciser le chemin d'accès aux .lib concernés. J'ai aussi essayé pragma comment mais rien y fait...
Quelqu'un pourrait il me sauver??
-
Tu arrives à appeler les autres fonctions de la classe FTIManager ?
Ou bien absolument rien ne passe ?
-
En fait, je n'arrive a utiliser aucune des fonctions de cette classe.. J'ai pourtant bien spécifié le repertoire ou se trouve le .lib...
C le mystere !
-
Rectification, j'arrive a utiliser certaines de ces fonctions.. Seules les fonctions appelées avec les :: ne foncitonnent pas..
exemple toto = FTIManager::create.
Desolé pour mon inexperience en c++. J'espere que la questin ne parait pas trop stupide.
Merci de m'eclairer de vos lumières !
-
salut,
la fonction FTIManager::create. est declarée static dans la classe ?
:D
-
exactement, c'est un static.
En fait, je comprends pas bien. Moi je pensais que l'operateur "::"permettait soit de déclarer une fonction, soit de déclarer un constructeur. Dans mon cas, je voi pas a koi il sert puisqu'il est dans le main...
-
Pour allez plus loin, il est declaré static FTIManager* create();
-
Quelqu'un aurait il une info pour mon chti probleme?? La je crois que je suis pas loin du suicide...
-
une piste peut etre, dans ton appli tu es obligé de réimporter toutes les lib qu'importait la lib que tu importe... :? je m emballe
si la lib que tu utilise linkait avec d'autres lib, il faut que dans ton projet a toi tu reimporte ces meme lib
j'espere ne pas dire de betises
-
En fait, je pense que c un probleme de convention entre __cdecl et __clrcall... mais je sais pas cmt faire pour qu tout le monde se comprenne. J'ai bien essayé de changer les propriétés dans visual c++ mais : aucun changement !
Je cale !