📄 ctr_unit.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 + -