FormatMessage简单使用和说明

常用参数简介.

FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_ALLOCATE_BUFFER,
  NULL,lVal,NULL,(LPTSTR)&hLocal,0,NULL); 

第一个参数是标志,告诉这个FormatMessage函数,我想要的特点.
第三个参数是DWORD(unsigned long)类型
第五个参数是LPTSTR(这个类型即可用与ANSI,也克用与Unicode).用来接收与MessageID 对应的Description.

注意:hLocal是HLOCAL类型也就是HANDLE类型,需要将他转换到LPTSTR.
第六个参数是这个buffer的大小,由于设置了FORMAT_MESSAGE_ALLOCATE_BUFFER那么他就可以置0了

例如:

   char szError[256];
   DWORD dwError = GetLastError();
   FormatMessage(
    FORMAT_MESSAGE_FROM_SYSTEM,
    NULL,                       
    0,
    0,
    szError,
    sizeof(szError),
    NULL);
   AfxMessageBox(szError);

你可能感兴趣的:(null,System,buffer)