FormatMessage funzt nicht kann mir einer sagen warum ?
-
Hallo zusammen,
FormatMessage funzt nicht kann mir einer sagen warum ?
in dw steht was drin 12002
aber in lpMsgBuf steht NULL.TCHAR szBuf[80]; LPVOID lpMsgBuf; DWORD dw = GetLastError(); FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, dw, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf, 0, NULL );
-
weil es 12002 nicht gibt
-
ffffffffff schrieb:
weil es 12002 nicht gibt
Die Codes gehen bis 15999
ERROR_INTERNET_TIMEOUT
12002
The request has timed out.http://msdn.microsoft.com/library/default.asp?url=/library/en-us/debug/base/system_error_codes.asp
-
Ok dann muss man bei FormatMessage das Modul-Handle von der wininet.dll angeben und dann noch FORMAT_MESSAGE_FROM_HMODULE. Das müsste es sein.
-
Leider ist die DLL nicht dynamisch eingebunden sondern statisch
mit USELIB("wininet.lib")
und dazu gab es eine header-Datei wininet.h.
Jetzt ist mir nicht klar wo ich das HAndle von der Dll her bekomme ;-(.
-
GetModuleHandle
-
Jetzt sieht es so aus:
HMODULE pHndtemp=NULL; pHndtemp = GetModuleHandle("wininet.dll"); TCHAR szBuf[80]; LPVOID lpMsgBuf; DWORD dw = GetLastError(); FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, pHndtemp, dw, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf, 0, NULL );
pHndtemp ist ! NULL.
aber lpMsgBuf ist immer noch NULL.
-
lies meinen beitrag nochmal
-
sorry ja habe ich vorher gehabt nur dann wieder rückgängig gemacht als es nicht ging
Danke Dir jetzt funzt es