INFO: FormatMessage() Converts GetLastError() Codes

ID: Q94999


The information in this article applies to:
  • Microsoft Win32 Application Programming Interface (API), included with:
    • Microsoft Windows NT versions 3.1, 3.5, 3.51, 4.0
    • Microsoft Windows 95, version 4.0


SUMMARY

The FormatMessage() application programming interface (API) allows you to convert error codes returned by GetLastError() into error strings using FORMAT_MESSAGE_FROM_SYSTEM in the dwFlags parameter.


MORE INFORMATION

The following code fragment demonstrates how to get the system message string:


LPVOID lpMessageBuffer;

FormatMessage(
  FORMAT_MESSAGE_ALLOCATE_BUFFER |
  FORMAT_MESSAGE_FROM_SYSTEM,
  NULL,
  GetLastError(),
  MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), //The user default language
  (LPTSTR) &lpMessageBuffer,
  0,
  NULL );

//... now display this string

// Free the buffer allocated by the system

LocalFree( lpMessageBuffer ); 


REFERENCES

For more information on language identifiers, please see the topic MAKELANGID in the Win32 Programmer's Reference.

Additional query words:

Keywords : kbnokeyword kbAPI kbKernBase kbNTOS310 kbNTOS350 kbNTOS351 kbNTOS400 kbWinOS2000 kbWinOS95 kbDSupport kbGrpKernBase
Version : winnt:3.1,3.5,3.51,4.0
Platform : winnt
Issue type : kbinfo


Last Reviewed: January 11, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.