begin process at 2012 05 27 18:03:38
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > RAPIDEMENT MODIFIER LE TYPE DE PROJET CONSOLE <-> WINDOWS [VC++]

RAPIDEMENT MODIFIER LE TYPE DE PROJET CONSOLE <-> WINDOWS [VC++]


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Astuces Niveau :Débutant Date de création :13/02/2003 Date de mise à jour :13/02/2003 17:19:55 Vu :2 555

Auteur : vieuxLion

Ecrire un message privé
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

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

  • //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
  • */
//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
*/




 Sources du même auteur

Source avec Zip Source avec une capture UN BUFFEROVERRUN : LE DÉBORDEMENT DE PILE
CONNAISSEZ VOUS PRINTF ?
Source avec Zip Source avec une capture Source .NET (Dotnet) C++ MANAGÉ PAR LES HELLO WORLDS (DOTNET)
Source avec Zip SIMPLE MOYEN DE FAIRE UNE DLL À PARTIR DE FONCTIONS CPP
LE VECTEUR EST UN SACRÉ COPIEUR

 Sources de la même categorie

Source avec Zip Source avec une capture EVAL EXPRESSION COMPLEXE EN 15 LIGNES DE CODE par yann_lo_san
Source avec Zip SCHEDULER RR FIFO par yvesB87
Source avec Zip ALGORITHMES RÉCURSIFS VS ALGORITHMES ITÉRATIFS par yvesB87
Source avec Zip Source avec une capture C++ FORMAT D'IMAGE AVEC QT par pop70
Source avec une capture EXEMPLE DE POINTEURS DE FONCTION par pop70

Commentaires et avis

Commentaire de Galett le 14/02/2003 00:37:38

très bon à connaitre ça :o) il m'est arrivé de tout changer les settings pour passer un projet console en win (mettre toutes les libs à inclure...kernel32.lib...etc...et c chiant :o)
si ton truc marche c'est bien plus simple :o)

Commentaire de davidsm le 14/02/2003 10:56:03

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

Commentaire de GoldenEye le 15/02/2003 13:29:28

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

Commentaire de Barbenoir le 23/03/2003 00:44:04

C claire c super! Bien joué!
Bonne continuation.

Commentaire de maladedede le 09/07/2006 19:55:19

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

Commentaire de maladedede le 15/07/2006 18:47:27

Je voudrais savoir comment on peut afficher une fenetre windows et aussi la fenetre dos (console) du programme en meme temps.

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales