Hi.
@quendolineDD:
Erst mal Danke für deine Antwort.
Das Beispiel auf
MSDN macht prinzipiell das selbe, kürzer isses auch.
@jaenicke:
Oh Mann, du hast vollkommen Recht.
Hab mir die ganze Zeit den Speicherbereich "zerhauen". Hab mich da wohl von der Delphi-Deklaration
verleiten lassen und nicht drauf geachtet ob die Routine den Speicher selbst reserviert.
Und dann auch noch an der falschen Stelle gesucht.
Vielen Dank.
Habs jetzt so:
Delphi-Quellcode:
function TForm3.GetDriverBaseName(pImageBase: Pointer): String;
var
lpBaseName: PChar;
size: Cardinal;
begin
Result := '';
GetMem(lpBaseName, 255);
try
size := GetDeviceDriverBaseName(pImageBase, lpBaseName, 255);
Result := StrPas(lpBaseName);
finally
FreeMem(lpBaseName);
end;
end;
Das funktioniert prima.
Noch mal vielen Dank an euch beide...
Gruß
BlackDragon