2009-07-18 97 views
1

我正在试图制作一个弹出式消息框,上面写着“Hello World”。 我开始了与文件>新建项目>的Visual C++> CLR> Windows窗体应用程序 于是我拖着从工具箱到窗体上按钮,双点击它 进入如何显示Win32 MessageBox?

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

然后我编... 但我得到了一个错误信息说

错误C2440:“”:不能从转换“为const char [12]”到“系统:视窗:形式:MessageBox的”

回答

9

您需要:

MessageBox::Show("Hello World"); 

+0

耶!!!有用!!!谢谢你richie! – user133466 2009-07-18 20:58:30

+9

然后接受他的回答! – 2009-07-18 21:26:02

5

(根据在Visual Studio 2005的说明测试)我不知道你的最终目标是什么,但主题行中提到,“在C Windows应用程序” - 你已经创建了一个C++/CLI应用程序,这不是一回事。

C++/CLI是微软试图创建一个更贴近.NET运行时的C++方言。

如果你想建立一个C程序,从Visual C++ - > Win 32 Project开始。

在生成的代码,在_tWinMain功能,呼叫添加到本地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); 

// ... 
} 

应该让你开始那。