mirror of
https://github.com/python/cpython.git
synced 2025-07-28 13:44:43 +00:00
Partial port of r59682 from py3k.
On Windows, when import fails to load a dll module, the message says "error code 193" instead of a more informative text. It turns out that FormatMessage needs additional parameters for some error codes. For example: 193 means "%1 is not a valid Win32 application". Since it is impossible to know which parameter to pass, we use FORMAT_MESSAGE_IGNORE_INSERTS to get the raw message, which is still better than the number.
This commit is contained in:
parent
d0d7d87869
commit
e0b7695286
2 changed files with 6 additions and 1 deletions
|
@ -194,7 +194,8 @@ dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname,
|
|||
errorCode = GetLastError();
|
||||
|
||||
theLength = FormatMessage(
|
||||
FORMAT_MESSAGE_FROM_SYSTEM, /* flags */
|
||||
FORMAT_MESSAGE_FROM_SYSTEM |
|
||||
FORMAT_MESSAGE_IGNORE_INSERTS, /* flags */
|
||||
NULL, /* message source */
|
||||
errorCode, /* the message (error) ID */
|
||||
0, /* default language environment */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue