Click here to Skip to main content
15,885,216 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello,

I have a project with one file that is a COM plugin for a hosting application.
In that code I can freely use AfxMessageBox(), or if I want a bit more control
I can also use MessageBox() like so:

MessageBox(NULL,"File Missing.","Error",MB_OK);

In another .cpp file in the same solution is a property page for my plugin that the host pops up from it's menu system I can again use AfxMessageBox() to my hearts content but MessageBox() throws up the compiler error:

'CWnd::MessageBoxA' : function does not take 4 arguments.

Intellisense in both file point to the define in winuser.h


I really would like to use MessageBox() in the property page so I can change the dialog title text.

Thanks for all your help in advance.

:Ron
Posted

The chances are that in one case you are getting CWnd::MessageBox[^] and in the other Win API ::MessageBox[^]
It's difficult to tell without your code, but try putting the :: specifier in there as see it it corrects the problem.
 
Share this answer
 
Comments
Ron Anders 12-Jan-13 11:04am    
double comment
In case 2 you are obviously calling it from within your CWnd derived class, so the correct call would be:
C++
MessageBox("File Missing.","Error",MB_OK);

as described in the documentation[^].
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900