B
Bob Altman
If I create a new Win32 Console project (unmanaged C++, Visual Studio 2005),
and add the following to the main program:
// Add this above the main routine
#include <windows.h> // Add this at the top of the file
// Add this to the main routine
MessageBox(NULL, "A", "B", MB_OK);
The compiler (Visual Studio 2005) complains that it can't convert parameter
2 from 'const char [2]' to 'LPCWSTR'.
I don't understand why the compiler apparently thinks that I am using
multi-byte character semantics. The really bizarre part is that I have
another project that contains calls to MessageBox, and that project compiles
just fine. I've looked at the project properties in both projects, but I
can't see anything that would obviously cause one to compile correctly and
one to fail to compile.
This all began when I tried to write some code that formats a message and
sends it to the MessageBox function, like this:
ostringstream msg;
msg << "my message expression";
MessageBox(NULL, msg.str().c_str(), "Title", MB_OK);
In this case, the compiler complains that it can't convert parameter 2 from
'const char *' to 'LPCWSTR'. But, as I said, I have this identical code in
another project and it works just fine.
TIA - Bob
and add the following to the main program:
// Add this above the main routine
#include <windows.h> // Add this at the top of the file
// Add this to the main routine
MessageBox(NULL, "A", "B", MB_OK);
The compiler (Visual Studio 2005) complains that it can't convert parameter
2 from 'const char [2]' to 'LPCWSTR'.
I don't understand why the compiler apparently thinks that I am using
multi-byte character semantics. The really bizarre part is that I have
another project that contains calls to MessageBox, and that project compiles
just fine. I've looked at the project properties in both projects, but I
can't see anything that would obviously cause one to compile correctly and
one to fail to compile.
This all began when I tried to write some code that formats a message and
sends it to the MessageBox function, like this:
ostringstream msg;
msg << "my message expression";
MessageBox(NULL, msg.str().c_str(), "Title", MB_OK);
In this case, the compiler complains that it can't convert parameter 2 from
'const char *' to 'LPCWSTR'. But, as I said, I have this identical code in
another project and it works just fine.
TIA - Bob