FILEMON.H
上传用户:hmgghm
上传日期:2007-01-07
资源大小:335k
文件大小:3k
源码类别:

文件操作

开发平台:

Visual C++

  1. /******************************************************************************
  2. *
  3. *       FileMon - File System Monitor for Windows NT/9x
  4. *
  5. * Copyright (c) 1996-1998 Mark Russinovich and Bryce Cogswell
  6. *
  7. * See readme.txt for terms and conditions.
  8. *
  9. *     PROGRAM: FileMon.h
  10. *
  11. *     PURPOSE: Definitions for filemon.
  12. *
  13. ******************************************************************************/
  14. // Application name for message boxes
  15. #define APPNAME _T("Filemon")
  16. // Registry paths
  17. #define FILEMON_SETTINGS_KEY TEXT("Software\Systems Internals\Filemon")
  18. #define FILEMON_SETTINGS_VALUE TEXT("Settings")
  19. #define FILEMON_RECENT_CONNECT_VALUE TEXT("Recent")
  20. #define FILEMON_RECENT_INFILTER_VALUE TEXT("InFilters")
  21. #define FILEMON_RECENT_EXFILTER_VALUE TEXT("ExFilters")
  22. #define FILEMON_RECENT_HIFILTER_VALUE TEXT("HiFilters")
  23. // Delay for popping listview subitem tooltips
  24. #define BALLOONDELAY 10
  25. // toolbar height plus the borders
  26. #define TOOLBARHEIGHT 28
  27. // number of toolbar buttons
  28. #define NUMTOOLBARBUTTONS 13
  29. // Number of columns in the listview
  30. #define NUMCOLUMNS 7
  31. // Number of filters to remember
  32. #define NUMRECENTFILTERS 5
  33. // Max length of string for a column in the listview
  34. #define MAXITEMLENGTH 0x1000
  35. // All drives and no drives 'drive letter' entries (integer)
  36. #define ALLDRIVES 27
  37. #define NODRIVES 28
  38. // Variables/definitions for the driver that performs the actual monitoring.
  39. #define SYS_FILE _T("FILEMON.SYS")
  40. #define SYS_NAME _T("FILEMON")
  41. #define VXD_FILE "\\.\FILEVXD.VXD"
  42. #define VXD_NAME "FILEVXD"
  43. // Drive type names
  44. #define DRVUNKNOWN 0
  45. #define DRVFIXED 1
  46. #define DRVREMOTE 2
  47. #define DRVRAM 3
  48. #define DRVCD 4
  49. #define DRVREMOVE 5
  50. // must be > 26 (max drive letters)
  51. #define PIPE_DRIVE 64
  52. #define SLOT_DRIVE 65
  53. // Offset for dots in listview
  54. #define DOTOFFSET 0
  55. // Position settings data structure 
  56. #define POSITION_VERSION 410
  57. typedef struct {
  58. int posversion;
  59. int left;
  60. int top;
  61. int width;
  62. int height;
  63. DWORD column[NUMCOLUMNS];
  64. DWORD curdriveset;
  65. DWORD historydepth;
  66. BOOLEAN maximized;
  67. BOOLEAN timeduration;
  68. BOOLEAN logreads;
  69. BOOLEAN logwrites;
  70. BOOLEAN ontop;
  71. BOOLEAN hookpipes;
  72. BOOLEAN hookslots;
  73. BOOLEAN showtoolbar;
  74. LOGFONT font;
  75. DWORD highlightfg;
  76. DWORD highlightbg;
  77. } POSITION_SETTINGS;
  78. // typedef for balloon popup
  79. typedef struct {
  80. TCHAR itemText[1024];
  81. RECT itemPosition;
  82. } ITEM_CLICK, *PITEM_CLICK;
  83. // toolbar constants
  84. #define ID_TOOLBAR        1
  85. // defined for comtl32.dll version 4.7
  86. #define TOOLBAR_FLAT 0x800
  87. // this typedef, present in newer system include files,
  88. // supports the building filemon on older systems
  89. typedef struct 
  90. {
  91.     DWORD cbSize;
  92.     DWORD dwMajorVersion;
  93.     DWORD dwMinorVersion;
  94.     DWORD dwBuildNumber;
  95.     DWORD dwPlatformID;
  96. } DLLVERSIONINFO_, *PDLLVERSIONINFO_;