Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Wo kann ich die WinIoCtl.h für Delphi finden? (https://www.delphipraxis.net/57353-wo-kann-ich-die-winioctl-h-fuer-delphi-finden.html)

Nils_25 19. Nov 2005 18:01


Wo kann ich die WinIoCtl.h für Delphi finden?
 
Guten Abend alle zusammen,

ich hab momentan so einige Probleme mit CTL-Codes.
Ich muss über die API Funktionen CreateFile und DeviceIoControl auf die Speicheradressen 043H, 443H zugreifen. Dabei muss ich bei der API Funktion DeviceIoControl den dwIoControlCode eintragen.
Ich habe mit Hilfe der Header Datei WinIoCtl.h versucht die Hexzahl für den gesamten CTL-Code auszurechnen. Allerdings ist die HEX-Zahl auf die ich gekommen bin zu lang.
Vielleicht weiß jemand, wie ich die HEX Zahl richtig ausrechne, oder wo ich die entsprechende Library für Delphi finde?

Vielen Dank für eure Hilfe.

Ciao Nils

MagicAndre1981 19. Nov 2005 19:28

Re: Wo kann ich die WinIoCtl.h für Delphi finden?
 
Zitat:

Zitat von Nils_25
... oder wo ich die entsprechende Library für Delphi finde?

Die findest du hier, oder bei dem Projekt JEDI-API.

Robert Marquardt 20. Nov 2005 05:41

Re: Wo kann ich die WinIoCtl.h für Delphi finden?
 
http://jedi-apilib.sf.net um genau zu sein. win32api braucht man. Da es offensichtlich um Geraete geht braucht man bestimmt auch scapi.

Nils_25 20. Nov 2005 17:24

Re: Wo kann ich die WinIoCtl.h für Delphi finden?
 
erst mal danke für die ganzen links. sind ein paar gute sachen dabei gewesen. allerdings hab ich dann versucht die libraries einubinden (uses) und ich hab dauernd neue fehlermeldungen beim compilieren der units bekommen.
hab jetzt das makro um den code zu bekommen einfach umgeschrieben und ne funktion draus gemacht. ich hoffe die funktion rechnet die richtige funktion aus. bekomm zumindest keine fehlermeldung mehr.

Christian Seehase 20. Nov 2005 18:00

Re: Wo kann ich die WinIoCtl.h für Delphi finden?
 
Moin Nils,

die Funktion müsste dann, IMHO, so aussehen:

Delphi-Quellcode:
function CTL_CODE(const AdwDeviceType : DWORD;const AdwFunction : DWORD;const AdwMethod : DWORD;const AdwAccess : DWORD) : DWORD;
begin
  Result := (AdwDeviceType shl 16) or (AdwAccess shl 14) or (AdwFunction shl 2) or AdwMethod;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz