ITek_dyna.c
上传用户:cnfair
上传日期:2007-01-07
资源大小:32k
文件大小:1k
源码类别:

驱动编程

开发平台:

Visual C++

  1. /****************************************************************************
  2.  * ITEK_dyn.c
  3.  *
  4.  * codes for dynamic loading
  5.  */
  6. #include <string.h>
  7. #pragma intrinsic(memcpy, memcmp, memset, strcat, strcmp, strcpy, strlen)
  8. #pragma warning(disable:4201 4514 4100 4127)
  9. #include <basedef.h>
  10. #include <vmm.h>
  11. #include <debug.h>
  12. #include <ndis.h>
  13. #include <vwin32.h>
  14. #include <efilter.h>
  15. #include "ITek_type.h"
  16. #include "ITek_init.h"
  17. #pragma VxD_LOCKED_CODE_SEG
  18. #pragma VxD_LOCKED_DATA_SEG
  19. DWORD __stdcall OnW32DeviceIoControl(
  20. DWORD   dwService, // service code
  21. DWORD   dwDDB, // VM handle
  22. DWORD   hDevice, // Ring3 device handle
  23. PDIOCPARAMETERS lpDioctl)
  24. {
  25. if(!lpDioctl) {
  26. return (DWORD)0xffffffff;
  27. }
  28. switch(dwService) {
  29. // DIOC_OPEN
  30. case DIOC_OPEN:
  31. return 0;
  32. // DIOC_CLOSEHANDLE
  33. case DIOC_CLOSEHANDLE:
  34. return 0;
  35. // DEFAULT case
  36. default:
  37. return (DWORD)0xffffffff;
  38. }
  39. }
  40. NDIS_STATUS __stdcall OnSysDynamicDeviceExit(void)
  41. {
  42. return NDIS_STATUS_SUCCESS;
  43. }
  44. #pragma VxD_ICODE_SEG
  45. #pragma VxD_IDATA_SEG
  46. NDIS_STATUS __stdcall OnSysDynamicDeviceInit(void)
  47. {
  48.         return DriverEntry(NULL, NULL);
  49. }