Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1589 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Win32 problème de liens...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Win32 problème de liens...

n°1342201
Amonchakai
Posté le 08-04-2006 à 21:31:29  profilanswer
 

Bonjour, bon alors je suis en train d'essayer de me mettre a l'API Win32 mais j'ai quelques soucis. Voilà déja le code pour créer une bête fenetre :
 

Code :
  1. #include<windows.h>
  2. LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM);
  3. int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hprevInstance, LPSTR lpCmdLine, int nCmdShow)
  4. {
  5.    HWND hwnd;
  6.    MSG msg;
  7.    WNDCLASS wc;
  8.    wc.style=0;
  9.    wc.lpfnWndProc=MainWndProc;
  10.    wc.cbClsExtra=0;
  11.    wc.cbWndExtra=0;
  12.    wc.hInstance=hinstance;
  13.    wc.hIcon=LoadIcon(NULL, IDI_APPLICATION);
  14.    wc.hCursor=LoadCursor(NULL,IDC_ARROW);
  15.    wc.lpszMenuName=NULL;
  16.    wc.lpszClassName="MaWinClass";
  17.    if(!RegisterClass(&wc)) return false;
  18.    hwnd = CreateWindow("MaWinClass", "titre", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 400, 300, NULL, NULL, hinstance, NULL);
  19.    if(!hwnd) return false;
  20.    ShowWindow(hwnd, nCmdShow);
  21.    UpdateWindow(hwnd);
  22.    while(GetMessage(&msg, NULL, 0, 0))
  23.    {
  24.    TranslateMessage(&msg);
  25.    DispatchMessage(&msg);
  26.    }
  27.    return (int)msg.wParam;
  28. }
  29. LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
  30. {
  31. switch(uMsg)
  32. {
  33. case WM_CREATE :
  34.  return 0;
  35. case WM_DESTROY:
  36.  PostQuitMessage(0);
  37.  return 0;
  38. default:
  39.  return DefWindowProc(hwnd, uMsg, wParam, lParam);
  40. }
  41. }


 
j'ai vu sur MSDN qu'il fallait ajouter User32.lib dans les liens. Donc jusque là pas de problème mais quand je l'ai ajouté j'ai eu une autre erreur de liens :

Citation :


MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup


bon pour l'info je suis sous visual c++ express edition (et j'ai bien téléchargé le platform SDK)
vous auriez une idée du lien qu'il faut que j'ajoute ?


Message édité par Amonchakai le 09-04-2006 à 08:33:42
mood
Publicité
Posté le 08-04-2006 à 21:31:29  profilanswer
 

n°1342205
breizhbugs
Posté le 08-04-2006 à 21:47:40  profilanswer
 

Salut,
Quand tu as fait ton projet, tu as du choisir "projet console" au lieu de "projet win32"?

n°1342209
Amonchakai
Posté le 08-04-2006 à 21:57:49  profilanswer
 

Ok, c'était ça. Mais maintenat j'ai un autre problème : quand je veut lancer l'exécutable rien ne ce passe... tu a une idée ???  
Et Merci de m'avoir répondu !!!

n°1342214
breizhbugs
Posté le 08-04-2006 à 22:16:37  profilanswer
 

Tu cree une fonction qui
- ouvre un fichier "monprog.log"
- y ecris le texte passer en parametre
- ferme le fichier
 
Ensuite fais un appel a cette fonction a differents endroit clé avec des parametre explicite:

Code :
  1. log("etape 1 passée" );
  2. ...
  3. log("etape 2 passée" );
  4. ...
  5. log("etape 3 passée" );
  6. ...


 
Et tu verras ou ca coince (normalement!)


Message édité par breizhbugs le 08-04-2006 à 22:17:12
n°1342303
Amonchakai
Posté le 09-04-2006 à 08:31:01  profilanswer
 

Ok, je vais faire ça. Mais est-il pas possible d'avoir une fenêtre dos qui tourne derrière et où l'on ferait simplement des std::cout<< ça serait plus simple que d'écrire sur un fichier... (mais bon je vais quand même voir ta méthode...)


Message édité par Amonchakai le 09-04-2006 à 08:32:04
n°1342312
Amonchakai
Posté le 09-04-2006 à 09:44:22  profilanswer
 

Bon, alors j'ai essayé et là c'est le drame : WinMain ne se lance même pas  :fou:  
Donc je me dit que je me suis peut-être encore trompé sur le type de projet (oui, la première fois j'avais choisit dans le "type de projet" Win32 et ensuite dans "visual installed template" j'avais pris "win32 console Application" Mais comme je n'ai pas de "windows application" dans ce type de projet je suis allé voir dans "général" et j'ai choisit "empty projet" et c'est là que j'ai finalement réussit a compiler (mais ça marche pas : il ne lance même pas WinMain). Mais là je viens de voir qu'il y a marqué "installed template" ça veut dire qu'il faut encore enstaller quelque chose ??? (car pour le moment le seul endroit où j'ai vu Window application c'est quand j'ai créé une console pour Win32 mais le bouton était grisé et donc il n'y avait pas moyen de le choisir...
Vous aurriez une idée de ce qu'il faut installer en plus ??? (je continue a chercher sur MSDN mais un petit coup de main ne serait pas de refus...)

n°1342337
breizhbugs
Posté le 09-04-2006 à 11:50:11  profilanswer
 

Salut,
Moi j'ai visual C++ .net 2002,
Je fais fichier/nouveau/projet
Ensuite dans "type de projet", je choisi "projet visual C++", dans "modèles", je chois "projet win32", j'ai un wizard qui se lance, dans "parametres de l'application", j'ai 4 possibilités:
- application console
- application windows
- dll
- bibliotheque statique
 
Je peut aussi dire - en plus - au wizard que je mon projet est "vide", cad a dire qu'il ne me genere pas les fichiers
 
Je peux pâs t'aider plus, je n'ai pas ton logiciel, mais il a surement de l'aide sur comment l'utiliser
("?/sommaire/visual studio.net/visualc++/creation et gestion de projets visual c++" en ce qui me concerne)

n°1342383
Amonchakai
Posté le 09-04-2006 à 13:42:09  profilanswer
 

Merci pour tes reponces mais moi tu vois en fait j'ai tout comme toi sauf a la fin j'ai pas  
- application windows
- dll
et j'ai regardé dans le répertoire de visual et il n'y a pas une seule aide pour la création d'un projet...
pour le moment je vai sur MSDN et la je trouve des explication. Pour le moment j'ai trouve ça : http://msdn2.microsoft.com/fr-fr/l [...] S.80).aspx
Et j'ai fait tout ce qu'ils disent mais ça ne marche toujours pas... enfin ne désespérons pas... :)

n°1343201
Amonchakai
Posté le 10-04-2006 à 16:13:29  profilanswer
 

Bon, voilà que je viens de trouver celà sur MSDN :
http://msdn2.microsoft.com/fr-fr/library/ydxtaww6.aspx
dans lequel ils disent (je cite) : "Si vous installez le kit de développement Platform SDK, le développement Windows n'est pris en charge pour les applications Win32 natives que jusqu'à un certain point (par exemple, vous ne serez pas en mesure de créer un projet Win32 à partir de l'IDE de Visual C++ Express)."  :cry:  
Bon en gros c'est pas la peine que je continue a me galérer a trouver pourquoi je n'y arrive pas. C'est tout simplement parce que c'est pas possible non??

n°1343230
breizhbugs
Posté le 10-04-2006 à 16:25:11  profilanswer
 

Amonchakai a écrit :

Bon, voilà que je viens de trouver celà sur MSDN :
http://msdn2.microsoft.com/fr-fr/library/ydxtaww6.aspx
dans lequel ils disent (je cite) : "Si vous installez le kit de développement Platform SDK, le développement Windows n'est pris en charge pour les applications Win32 natives que jusqu'à un certain point (par exemple, vous ne serez pas en mesure de créer un projet Win32 à partir de l'IDE de Visual C++ Express)."  T'as lu le lien qui se trouve ici a suivre dans la page que tu cites?


Message édité par breizhbugs le 10-04-2006 à 16:25:47
mood
Publicité
Posté le 10-04-2006 à 16:25:11  profilanswer
 

n°1343273
Amonchakai
Posté le 10-04-2006 à 16:50:13  profilanswer
 

oui, pourquoi ???

n°1343403
Amonchakai
Posté le 10-04-2006 à 17:57:38  profilanswer
 

CORECTION !!! Je viens enfin de réussir !!!  :bounce:  
 
Bon alors la solution je l'ai trouvé sur MSDN (qui une fois de plus a montré sa grande utilité...)
voilà le lien : http://msdn.microsoft.com/vstudio/ [...] usingpsdk/
 
le tout réside dans l'étape 5, que j'ai uniquement trouvé sur la version anglaise de MSDN...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Win32 problème de liens...

 

Sujets relatifs
problème de filsProbleme chargement librairie.
problème de booléenXHTML : probleme de footer
Tableau : drole de problème Help please[help needed] gros problème avec flash
certificat d'identité, problème de certificatProbleme pour creer un lien pour telechargement
Un nouveau membre pour mon forum!!! probleme[VBS] Probleme de caracteres speciaux pour Active directory
Plus de sujets relatifs à : Win32 problème de liens...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR