📄 dt2851ioctl.h
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type></HEAD>
<BODY scroll=yes><XMP>#ifndef DT2851IOCTL
#define DT2851IOCTL
// Define the various device type values. Note that values used by Microsoft
// Corporation are in the range 0-32767, and 32768-65535 are reserved for use
// by customers.
// IOCTL interface definitions
// Device type -- in the "User Defined" range."
#define DT2851_TYPE 0x00008000
// Define the IOCTL function codes.
// Note that values used by Microsoft range 0-0x7FF.
// The IOCTL function codes from 0x800 to 0xFFF are for customer use.
#define DT2851_IOCTL_INDEX 0x900
#define IOCTL_DT2851_READ_PORT \
CTL_CODE( DT2851_TYPE, \
DT2851_IOCTL_INDEX, \
METHOD_BUFFERED, \
FILE_READ_ACCESS )
#define IOCTL_DT2851_WRITE_PORT \
CTL_CODE( DT2851_TYPE, \
DT2851_IOCTL_INDEX + 1, \
METHOD_BUFFERED, \
FILE_WRITE_ACCESS)
#define IOCTL_DT2851_READ_MEMORY \
CTL_CODE(DT2851_TYPE, \
DT2851_IOCTL_INDEX + 2, \
METHOD_BUFFERED, \
FILE_READ_ACCESS)
#define IOCTL_DT2851_WRITE_MEMORY \
CTL_CODE(DT2851_TYPE, \
DT2851_IOCTL_INDEX + 3, \
METHOD_BUFFERED, \
FILE_WRITE_ACCESS)
#define IOCTL_DT2851_FILL_MEMORY \
CTL_CODE(DT2851_TYPE, \
DT2851_IOCTL_INDEX + 4, \
METHOD_BUFFERED, \
FILE_WRITE_ACCESS)
///////////////////////////////////////////////////////////////////////////////
typedef struct _DT2851_PORT_BUFFER
{
ULONG PortNumber; // Port # to write to
union { // Data to be output to port
ULONG LongData;
USHORT ShortData;
};
} DT2851_PORT_BUFFER;
typedef struct _DT2851_MEMORY_BUFFER
{
char* userBuffer;
USHORT bufferNumber;
USHORT fillValue;
ULONG byteOffset;
ULONG numberOfBytes;
} DT2851_MEMORY_BUFFER;
#endif
</XMP></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -