REGMON.H
上传用户:kevenhsn
上传日期:2007-01-03
资源大小:251k
文件大小:2k
源码类别:

系统编程

开发平台:

Visual C++

  1. //======================================================================
  2. //
  3. // REGMON.h - include file for VxD REGMON
  4. //
  5. // Copyright (C) 1996 Mark Russinovich and Bryce Cogswell
  6. //
  7. //======================================================================
  8. #include <vtoolsc.h>
  9. //----------------------------------------------------------------------
  10. //                           D E F I N E S 
  11. //----------------------------------------------------------------------
  12. #define REGMON_Major 1
  13. #define REGMON_Minor 0
  14. #define REGMON_DeviceID UNDEFINED_DEVICE_ID
  15. #define REGMON_Init_Order UNDEFINED_INIT_ORDER
  16. //
  17. // Number of hash buckets
  18. //
  19. #define NUMHASH         0x100
  20. #define HASHOBJECT(_hkey) (((ULONG)_hkey)>>2)%NUMHASH
  21. //
  22. // Size of storage buffer in pages
  23. //
  24. #define STORESIZE       (MAX_STORE/0x1000+1)
  25. //
  26. // Maximum path length
  27. //
  28. #define MAXPATHLEN      1024
  29. //
  30. // Sizes of various buffers
  31. //
  32. #define STRINGLEN      240
  33. #define DATASIZE       512
  34. #define NAMELEN        256
  35. #define PROCESSLEN      16
  36. #define BINARYLEN        8
  37. //
  38. // Maximum seperate filter components 
  39. //
  40. #define MAXFILTERS      64
  41. //
  42. // Entries in VMM Win32 service table
  43. //
  44. #define VMMWIN32QUERYINFOKEY    (0x1E * 2 )
  45. //----------------------------------------------------------------------
  46. //                        S T R U C T U R E S 
  47. //----------------------------------------------------------------------
  48. //
  49. // Structure for our name hash table
  50. //
  51. typedef struct _nameentry {
  52.    HKEY                 hkey;
  53.    PCHAR         FullName;
  54.    struct _nameentry  *Next;
  55. } HASH_ENTRY, *PHASH_ENTRY;
  56. //
  57. // Structure for keeping linked lists of output buffers
  58. //
  59. typedef struct _store {
  60.     ULONG         Len;
  61.     struct _store       *Next;
  62.     char         Data[ MAX_STORE ];
  63. } STORE_BUF, *PSTORE_BUF;
  64.