📄 d12_driverdevice.h
字号:
// D12_DriverDevice.h
//
// Generated by DriverWizard version DriverStudio 3.0.0 (Build 1126)
// Requires Compuware's DriverWorks classes
//
#ifndef __D12_DriverDevice_h__
#define __D12_DriverDevice_h__
class D12_DriverDevice : public KPnpDevice
{
// Constructors
public:
SAFE_DESTRUCTORS;
D12_DriverDevice(PDEVICE_OBJECT Pdo, ULONG Unit);
~D12_DriverDevice();
// Member Functions
public:
DEVMEMBER_DISPATCHERS
virtual NTSTATUS OnStartDevice(KIrp I);
virtual NTSTATUS OnStopDevice(KIrp I);
virtual NTSTATUS OnRemoveDevice(KIrp I);
virtual NTSTATUS DefaultPnp(KIrp I);
virtual NTSTATUS DefaultPower(KIrp I);
virtual NTSTATUS OnDevicePowerUp(KIrp I);
virtual NTSTATUS OnDeviceSleep(KIrp I);
virtual NTSTATUS OnQueryCapabilities(KIrp I);
NTSTATUS D12_DRIVER_READ_Handler(KIrp I);
NTSTATUS D12_DRIVER_WRITE_Handler(KIrp I);
NTSTATUS D12_DRIVER_BULK_OUT_Handler(KIrp I);
NTSTATUS D12_DRIVER_BULK_IN_Handler(KIrp I);
NTSTATUS D12_DRIVER_VENDOR_REQUEST_Handler(KIrp I);
DEVMEMBER_CANCELIRP(D12_DriverDevice, Cancel)
MEMBER_IOWORKITEMFUNCTION( D12_DriverDevice, Workitem )
MEMBER_COMPLETEIRP( D12_DriverDevice, OnQueryCapabilitiesComplete )
#ifdef _COMMENT_ONLY
// The following member functions are actually defined by the
// a DEVMEMBER_xxx or MEMBER_xxx macro (such as DEVMEMBER_DISPATCHERS).
// The macro __COMMENT_ONLY never gets defined. These comment-only
// definitions simply allow easy navigation to the functions within
// the Developer Studio using the class browser.
virtual NTSTATUS CleanUp(KIrp I); // COMMENT_ONLY
virtual NTSTATUS Create(KIrp I); // COMMENT_ONLY
virtual NTSTATUS Close(KIrp I); // COMMENT_ONLY
virtual NTSTATUS DeviceControl(KIrp I); // COMMENT_ONLY
virtual NTSTATUS SystemControl(KIrp I); // COMMENT_ONLY
#endif
// Member Data
protected:
// Unit number for this device (0-9)
ULONG m_Unit;
KUsbLowerDevice m_Lower;
KUsbInterface m_Interface;
// Pipe for USB endpoint 1 IN (address 0x81)
KUsbPipe m_Endpoint1In;
// Pipe for USB endpoint 1 OUT (address 0x1)
KUsbPipe m_Endpoint1Out;
// Pipe for USB endpoint 2 IN (address 0x81)
KUsbPipe m_Endpoint2In;
// Pipe for USB endpoint 2 OUT (address 0x1)
KUsbPipe m_Endpoint2Out;
KIrp m_kIrp;
KIoWorkItem m_pItem;
int IEndpoint2InLength;
int IEndpoint2OutLength;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -