Init.h
上传用户:yitai_qhd
上传日期:2008-04-24
资源大小:31k
文件大小:1k
开发平台:

Visual C++

  1. #ifndef _INIT_H
  2. #define _INIT_H
  3. extern "C"
  4. {
  5. #include "ntddk.h"
  6. }
  7. #include "devioctl.h"
  8. #define CTL_CODE_EX(Function) CTL_CODE(0x7FFF + 78, 
  9. ( 0x07FF + 78 + Function), METHOD_BUFFERED, FILE_ANY_ACCESS)
  10. #define GET_USER_MEMORY CTL_CODE_EX(1)
  11. typedef struct tagIOCTLParams
  12. {
  13. unsigned long dioc_IOCtlCode;
  14. void *dioc_InBuf;
  15. unsigned long dioc_cbInBuf;
  16. void * dioc_OutBuf;
  17. unsigned long dioc_cbOutBuf;
  18. } IOCTLPARAMS, *PIOCTLPARAMS;
  19. VOID DbpUnload(IN PDRIVER_OBJECT DriverObject);
  20. NTSTATUS
  21. Open(
  22.     IN PDEVICE_OBJECT DeviceObject,
  23.     IN PIRP Irp
  24. );
  25. NTSTATUS
  26. Close(
  27.     IN PDEVICE_OBJECT DeviceObject,
  28.     IN PIRP Irp
  29. );
  30. NTSTATUS
  31. Cleanup(
  32.     IN PDEVICE_OBJECT DeviceObject,
  33.     IN PIRP Irp
  34. );
  35. NTSTATUS
  36. Read(
  37.     IN PDEVICE_OBJECT DeviceObject,
  38.     IN PIRP Irp
  39. );
  40. NTSTATUS
  41. Write(
  42.     IN PDEVICE_OBJECT DeviceObject,
  43.     IN PIRP Irp
  44. );
  45. NTSTATUS
  46. IoControl(
  47.     IN PDEVICE_OBJECT DeviceObject,
  48.     IN PIRP Irp
  49. );
  50. #endif