📄 usbloader.h
字号:
#ifndef USBLOADER_H
#define USBLOADER_H
#endif
#include "wdm.h"
#include "usbdi.h"
#include "usbdlib.h"
#include <resource.h>
#ifndef _BYTE_DEFINED
#define _BYTE_DEFINED
typedef unsigned char BYTE;
#endif // !_BYTE_DEFINED
#ifndef _WORD_DEFINED
#define _WORD_DEFINED
typedef unsigned short WORD;
#endif // !_WORD_DEFINED
//#ifdef DRIVER
#define ANCHOR_LOAD_INTERNAL 0xA0
#define ANCHOR_LOAD_EXTERNAL 0xA3
#define MAX_INTERNAL_ADDRESS 0x1B3F
#define INTERNAL_RAM(address) ((address <= MAX_INTERNAL_ADDRESS) ? 1 : 0)
#define CPUCS_REG 0x7F92
typedef struct _DEVICE_EXTENSION
{
PDEVICE_OBJECT PhysicalDeviceObject;
PDEVICE_OBJECT LowerDeviceObject;
LONG Usages;
KEVENT evRemove;
BOOLEAN Removing;
} DEVICE_EXTENSION, *PDEVICE_EXTENSION;
#define MAX_INTEL_HEX_RECORD_LENGTH 16
typedef struct _INTEL_HEX_RECORD
{
BYTE Length;
WORD Address;
BYTE Type;
BYTE Data[MAX_INTEL_HEX_RECORD_LENGTH];
} INTEL_HEX_RECORD, *PINTEL_HEX_RECORD;
NTSTATUS TestAddDevice(IN PDRIVER_OBJECT DriverObject,IN PDEVICE_OBJECT PhysicalDeviceObject);
VOID TestDrvUnload(IN PDRIVER_OBJECT DriverObject);
NTSTATUS TestPnpIrp(IN PDEVICE_OBJECT fdo, IN PIRP Irp);
BOOLEAN LockDevice(IN PDEVICE_OBJECT fdo);
void UnlockDevice(PDEVICE_OBJECT fdo);
NTSTATUS CompleteRequest(IN PIRP Irp,IN NTSTATUS status,IN ULONG info);
NTSTATUS UsbCallUSBDI(IN PDEVICE_OBJECT DeviceObject,IN PURB Urb);
//#endif //DRIVER section
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -