FormatMessage Fails with error code 317
When I executed the following code piece it fails with error code 317. How can solve the issue? We are using Unicode Character Set for the project
开发者_StackOverflowchar* pszMessgeBuffer = NULL;
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
dwErrorId,
0, // Default language
(LPTSTR) &pszMessgeBuffer,
0,
NULL )
Using the error code lookup tool from Visual Studio, 317 is described as
The system cannot find message text for message number 0x%1 in the message file for %2.
This means that a message description does not exist in the system for the previous error code. The MSDN documentation for FormatMessage with flag FORMAT_MESSAGE_FROM_SYSTEM
states that:
Not all Windows Embedded CE–based devices will contain the system message-table resources. This is a selectable part of the Windows Embedded CE operating system and is often removed to conserve space.
I think error 317 is the result of using Win32 function LsaNtStatusToWinError(87), where winstatus 87 means 'The parameter is incorrect'
精彩评论