Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: WNetGetLastError

  Alt 29. Nov 2005, 18:55
Zitat von Luckie:
Allerdings bekomme ich von WNetAddConnection2 1219 zurück während ERROR_EXTENDED_ERROR 1208 ist. Bei 1219 liefert SysErrorMessage allerdings einen Leerstring zurück.
Nur wenn die Errornr = ERROR_EXTENDED_ERROR ist, dann kommt WNetGetLastError zum Zuge.
Falls SysErrorMessage nichts liefert, kann das daran liegen, dass der Errortext aus den Resourcen einer anderen DLL gezogen werden müssen:
Delphi-Quellcode:
function ErrorMessageFromModule(ErrorCode: Integer; hm:HModule): string;
var
   Len: Integer;
begin
   SetLength(Result, 512);
   Len := FormatMessage(FORMAT_MESSAGE_FROM_HMODULE (*or
    FORMAT_MESSAGE_ARGUMENT_ARRAY*)
 or FORMAT_MESSAGE_IGNORE_INSERTS, Pointer(hm), ErrorCode, 0, PChar(Result),
    512, nil);
   while (Len > 0) and (Result[Len - 1] in [#0..#32, '.']) do Dec(Len);
   SetLength(Result, Len);
end;

errormsg := ErrorMessageFromModule(errorcode, GetModuleHandle('mpr.dll'));
Andreas
  Mit Zitat antworten Zitat