⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ctr_unit.pas

📁 delphi直接操作设备驱动程序源代码.
💻 PAS
字号:
unit ctr_unit;
interface
const
   // 设备类型定义
   File_Device_UNKNOWN = $00000022;
   Method_Buffered = 0;
   File_Any_Access = 0;
   File_Read_Access = ($0001);
   File_Write_Access = ($0002);
var
   IOCTL_PORTIO_OPENPORT: integer = 0;
   IOCTL_PORTIO_READPORT: integer = 0;
   IOCTL_PORTIO_WRITEPORT: integer = 0;
   IOCTL_PORTIO_CLOSEPORT: integer = 0;
type
   ULONG = Cardinal;
   PORTOPENPARAMS = record
      open_Address: ULONG;
      open_PortSize: ULONG;
      open_PortCount: ULONG;
   end;
   PORTREADPARAMS = record
      rd_Handle: ULONG;
      rd_Index: ULONG;
   end;
   PORTWRITEPARAMS = record
      wr_Handle: ULONG;
      wr_Index: ULONG;
      wr_Data: ULONG;
   end;
   PORTCLOSEPARAMS = record
         close_Handle: ULONG;
   end;
implementation
function Ctl_Code(DeviceType, FuncNo, Method, Access: integer): integer;
begin
   Result := (DeviceType shl 16) or (Access shl 14) or (FuncNo shl 2) or (Method)
end;
initialization
IOCTL_PORTIO_OPENPORT := Ctl_Code(FILE_DEVICE_UNKNOWN, $0, Method_Buffered, File_Any_Access);
IOCTL_PORTIO_READPORT := Ctl_Code(FILE_DEVICE_UNKNOWN, $1, Method_Buffered, File_Any_Access);
IOCTL_PORTIO_WRITEPORT := Ctl_Code(FILE_DEVICE_UNKNOWN, $2, Method_Buffered, File_Any_Access);
IOCTL_PORTIO_CLOSEPORT := Ctl_Code(FILE_DEVICE_UNKNOWN, $3, Method_Buffered, File_Any_Access);
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -