Re: CString help
You're right about CString, but the function is pretty simple. I use this
one:
CRITICAL_ERROR CSpanRestoreDlg::DisplayCriticalError(DWORD nError)
{
LPVOID lpMsgBuf;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
nError,
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR) &lpMsgBuf,
0, NULL );
CString cs;
cs.FormatMessage(IDS_CRITICAL_ERROR,nError,lpMsgBuf);
LocalFree(lpMsgBuf);
int ret = AfxMessageBox(cs,MB_ICONSTOP | MB_ABORTRETRYIGNORE);
if(ret == IDABORT)
return CRITICAL_ABORT;
else if(ret == IDRETRY)
return CRITICAL_RETRY;
else
return CRITICAL_IGNORE;
}
customized a little for my specific use.
Tom
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
news:vrar735etcclvtm4fkqnbk10uvs4hll59f@4ax.com...
For example, ::GetLastError codes. These are often represented by
MESSAGETABLE resources
in a module. And yes, ::FormatMessage has all this capability, but
CString::FormatMessage
exposes only some of the least interesting aspects of ::FormatMessage.
joe
On Sat, 23 Jun 2007 15:33:22 -0700, "Alexander Grigoriev"
<alegr@earthlink.net> wrote:
FORMAT_MESSAGE_FROM_HMODULE?
What you mean by "error code"?
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
news:tluq73998bac5kvd4ubc9plg9h2r075tcm@4ax.com...
Did anyone at Microsoft notice that there is no form of FormatMessage
that
allows an error
code or the specification of a instance handle for an executable that
contains a Message
Table? How could such critical capability been omitted?
joe
On Sat, 23 Jun 2007 01:39:58 -0700, "Mihai N."
<nmihai_year_2000@yahoo.com> wrote:
Hi,
Nice to see you back.
I was around, but had nothing to add (enough good answers already :-)
I try to put every string possible (often even format strings) in
the resource editor and use the FormatMessage version using %1 %2,
etc.
so
that the translator can simply switch the order of the parameters at
runtime. Very convenient.
True. Both CString + FormatMessage take a string ID, forming a great
combination for good localizability.
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm