Rapidement modifier le type de projet console <-> windows [vc++]

Soyez le premier à donner votre avis sur cette source.

Snippet vu 3 375 fois - Téléchargée 34 fois

Contenu du snippet

Vous avez été trop vite, vous vous êtes trompé de type de projet.
Pour éviter de repartir de zéro, modifez simplement les 2 endroits suivants :
Dans Projet/settings/
1) Onglet C++/General
preprocessor definition _CONSOLE <=> _WINDOWS
2) dans link/general
/subsystem:console <=> /subsystem:windows

Source / Exemple :


//PARTIE I : Console => Windows
/*
//le projet est créé en mode Console
// on vérifie que ça marche :
#include <iostream.h>

int main()
{
	cout <<"main\n";
	return 0;
}

  • /
//puis on met le code précédent en commentaire et // on tape le code pour Windows #include <windows.h> int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { MessageBox(0,"main", "win",0); return 0; } //ceci provoque l'erreur suivante : //LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main /* Pour éviter de recréer un nouveau projet du type Windows Application... modifier projet/settings/Onglet C++/General preprocessor definition transformer _CONSOLE => _WINDOWS dans link/general, transformer /subsystem:console => /subsystem:windows
  • /
//PARTIE II : Windows => Console /* Le projet est créé en type Windows Application On vérifie qu'il compile, linke et s'exécute bien : #include <windows.h> int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { // TODO: Place code here. MessageBox(0,"main", "win",0); return 0; }
  • /
//Puis on met le code précédent en commentaire // code Console tapé #include <iostream.h> int main() { cout <<"main\n"; return 0; } //Erreur obtenue //LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 /* modifier projet/settings/Onglet C++/General preprocessor definition _WINDOWS => _CONSOLE dans link/general /subsystem:windows => /subsystem:console
  • /

A voir également

Ajouter un commentaire

Commentaires

Utilisateur anonyme
Je voudrais savoir comment on peut afficher une fenetre windows et aussi la fenetre dos (console) du programme en meme temps.
Utilisateur anonyme
Voila j'ai noté ta source a 10/10 c'est ce que je cherchre !!!
et ca ma permit de fair un Projet WINDOWS avec Visual C++ Express !!!!!! :)
Car dans les version Express cette option est bloqué :P
MERCI
cs_Barbenoir
Messages postés
7
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
30 mai 2006

C claire c super! Bien joué!
Bonne continuation.
cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
3
Ah génial, je fais souvent ce genre de manip précipitée (erreur dans le type du projet) et après je ne sais pas comment revenir sur ma connerie.
Merci bcp
cs_davidsm
Messages postés
35
Date d'inscription
lundi 6 janvier 2003
Statut
Membre
Dernière intervention
12 novembre 2004

Bonne idée, car autrement c'est galère à moins de repartir à 0.
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.