Weil ich grade diese Units hier rumliegen hatte?
Nja, als ich Letztens nach einigen APIs gesucht hatte, war ich darüber gestolpert und hatte es runtergeladen.
Das ZwDeviceIoControlFile wird vom JWA dynamisch geladen, was allerdings nicht klappte.
Delphi-Quellcode:
// unit Windows
type
LPWSTR = PWideChar;
// unit JwaWinType
type
LPTSTR =
{$IFDEF USE_DELPHI_TYPES} Windows.LPWSTR
{$ELSE} LPWSTR
{$ENDIF};
LPCTSTR = LPTSTR;
function GetModuleHandle(lpModuleName: LPCTSTR): HMODULE;
stdcall;
function LoadLibrary(lpLibFileName: LPCTSTR): HMODULE;
stdcall;
function GetModuleHandle;
external kernel32
name '
GetModuleHandleA';
function LoadLibrary;
external kernel32
name '
LoadLibraryA';
Also
Unicode ... nja, es ist als PWideChar deklariert, aber es wurden die
Ansi-APIs aufgerufen.
Nach W geändert und schon wurde die
DLL und die Prozedur gefunden.
Eigentlich hab ich meine paar APIs selber deklariert,
aber da die Delphi-Suche (Strg+Shift+F) vorhin meinte, diese
API sei darin vorhanden, hab ich es zu Testen halt einfach mal daraus aufgerufen.
Sonst nutzte ich dieses JWA eigentlich nicht direkt.
[add]
'ne Deklaration des Type3InputBuffer hatte ich eh noch nicht gefunden.
Aber ich sagte ja ... wenn ich Pech hab, dann haben diese APIs eh
nur was mit diesen Miniport-Treibern zu tun.