2009-07-18 8 views
1

J'essaye de faire une boîte de message pop-up avec "Hello World" écrit dessus. J'ai commencé avec Fichier> Nouveau projet> Visual C++> CLR> Formulaire d'application Windows Ensuite, je traînais un bouton de la boîte à outils sur le formulaire, double clic, il est entré Comment afficher un MessageBox Win32?

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) 
{ 
MessageBox("Hello World"); 
} 

je ... compilé mais je reçu un message d'erreur indiquant que

erreur C2440: '': ne peut pas convertir 'const char [12]' à 'System :: de Windows :: Forms :: MessageBox'

Répondre

9

Vous avez besoin:

MessageBox::Show("Hello World"); 

(Testée selon vos instructions dans Visual Studio 2005.)

+0

Yay !!! Ça marche!!! merci richie !! – user133466

+9

puis acceptez sa réponse! –

5

Je ne suis pas sûr de ce que vos objectifs ultimes sont, mais le sujet mentionné une « application Windows dans C » - vous avez créé un Application C++/CLI, ce qui n'est pas vraiment la même chose. C++/CLI est la tentative de Microsoft de créer un dialecte C++ plus proche du runtime .NET.

Si vous souhaitez créer un programme C, commencez par un projet Visual C++ -> Win 32.

Dans le code généré, dans la fonction _tWinMain, ajoutez un appel à la fonction native MessageBox:

int APIENTRY _tWinMain(HINSTANCE hInstance, 
        HINSTANCE hPrevInstance, 
        LPTSTR lpCmdLine, 
        int  nCmdShow) 
{ 
    UNREFERENCED_PARAMETER(hPrevInstance); 
    UNREFERENCED_PARAMETER(lpCmdLine); 

    MessageBox(NULL, _T("Hello world!"), _T("My program"), MB_OK); 

// ... 
} 

Cela devrait vous commencer.

+0

Im essayant d'apprendre le tutoriel de programmation de l'API Win32 de Forger mais je ne sais même pas comment commencer ... J'ai eu des difficultés à terminer leur premier assignemnt = ( – user133466

+1

OK, alors vous ne devriez pas utiliser le projet CLR types, mais plutôt les projets natifs Win32 Essayez de commencer ici: http://winprog.org/tutorial/start.html et démarrez à partir d'un projet Visual C++ -> Win32 -> Win32. un projet vide (case à cocher à la page 2 de l'assistant de projet) –