'MessageBoxA' : function does not take 1 parameters
来源:互联网 发布:淘宝秒刷钻 编辑:程序博客网 时间:2024/05/24 06:17
程序里面写的是MessageBox(str);但为什么编译时提示出错时MessageBoxA呢?
原因是MessageBox实际上有2个原形:MessageBoxA和MessageBoxW
#ifdef UNICODE
#define MessageBox MessageBoxW
#else
#define MessageBox MessageBoxA
#endif // !UNICODE
如何解决这个编译错误?
出错的原因是:MessageBox(CString str)一个参数的函数是MFC下调用的,如果你程序没有用到MFC,例如你只是一个Windows Console工程,因为你没有窗口,所以MessageBox获取不到窗口句柄,那么这样用肯定错误。只有用4个参数的MessageBox,指定窗口句柄,可以用NULL,那么就是属于桌面的了。
AfxMessageBox()一般应用于窗体之中,没有窗体,或者是全局函数,不能使用该函数;
MessageBox()可以应用于没有窗体和有窗体的两种情况,在有窗体的情况下使用方法完全与AfxMessageBox一样。但是AfxMessageBox的弹出的标题默认是当前工程的名字,不想MessageBox可以指定弹出框的标题。
另外,API形式的MessageBox是4个参数,MFC的MessaegBox是3个参数。如果编译时提示'MessageBoxA' : function does not take 4 parameters,那么是因为你调用的的MFC的,但你又输入了4个参数。
解决办法,使用域操作符::MessageBox(),则使用API的4个参数形式。或者只传入3个参数,使用MFC的MessageBox()。
- 'MessageBoxA' : function does not take 1 parameters
- 【编程语言】MFC--'MessageBoxA' : function does not take 1 parameter
- <errors>'MessageBoxA' : function does not take 1 parameter
- error C2660: 'Open' : function does not take 12 parameters
- error C2660: 'SaveAs' : function does not take 11 parameters
- error C2660: 'new' : function does not take 3 parameters
- error C2660: 'new' : function does not take 3 parameters
- error C2660: 'new' : function does not take 3 parameters
- 'new' : function does not take 3 parameters(转载)
- error C2660: ‘Create’ : function does not take 2 parameters
- 'new' : function does not take 3 parameters(部分转载)
- 'new' : function does not take 3 parameters(转载)
- 微软VC各版本BUG: error C2660: 'new' : function does not take 3 parameters
- 微软VC各版本BUG: error C2660: 'new' : function does not take 3 parameters[转]
- VS2008中使用GDI+(error C2660: 'new' : function does not take 3 parameters)
- error C2660: 'Gdiplus::GdiplusBase::operator new' : function does not take 3 parameters
- VC GDI+: error C2660: 'new' : function does not take 3 parameters
- VC GDI+: error C2660: 'new' : function does not take 3 parameters
- windows下安全的创建子进程
- 比较日期的大小
- 如何删除SP Home界面的Recent Programs图标
- Agile Web Development wiht Rails 2nd ed
- 栈对象和堆对象
- 'MessageBoxA' : function does not take 1 parameters
- ORDER BY 的特殊写法
- Red-Green-Refactor
- 自动换行word-break:break-all和word-wrap:break-word的区别
- 《嵌入式对话》第四期电子杂志
- 调查报告--行业中最需要的IT技能是什么
- 使用自定义字体时报错 CTypefaceStore -14
- RaxDataGridView
- XML Comments Let You Build Documentation Directly From Your Visual Studio .NET Source Files