【100分求救】vc 2005 MessageBox()编译错误我想在点了一个按钮之后弹出一个MessageBox我引用了头文件:#incl
【100分求救】vc 2005 MessageBox()编译错误
我想在点了一个按钮之后弹出一个MessageBox
我引用了头文件: #include <windows.h>
下面是一些namespace:
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
代码如下:
MessageBox(NULL,L"机型参数设置成功",L"成功",MB_OK) ; //这就是644行
编译出错:、
e:\modifydata\modifydata\Form1.h(644) : error C2872: 'MessageBox' : ambiguous symbol
1> could be 'e:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\winuser.h(7205) : int MessageBox(HWND,LPCTSTR,LPCTSTR,UINT)'
1> or 'c:\windows\microsoft.net\framework\v2.0.50727\system.windows.forms.dll : System::Windows::Forms::MessageBox'
1>e:\modifydata\modifydata\Form1.h(644) : error C2872: 'MessageBox' : ambiguous symbol
1> could be 'e:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include\winuser.h(7205) : int MessageBox(HWND,LPCTSTR,LPCTSTR,UINT)'
1> or 'c:\windows\microsoft.net\framework\v2.0.50727\system.windows.forms.dll : System::Windows::Forms::MessageBox'
在网上查了很久,没找出原因出来,有些说是用了namespace就不能再include了,但是,我注释掉#include <windows.h>之后,就会显示:MB_OK没有定义,
请各位不吝赐教
[解决办法]using namespace后 重名了呗
System::Windows::Forms::MessageBox和 api函数 MessageBox无法区分开了
既然用了.net那么就直接使用
System::Windows::Forms::MessageBox::Show
不要再包含windows.h 了
[解决办法]http://msdn.microsoft.com/zh-cn/library/vstudio/ba2a6d06.aspx