Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

151 lines
2.6 KiB

  1. #pragma once
  2. #ifdef __cplusplus
  3. extern "C" { /* Assume C declarations for C++ */
  4. #endif /* __cplusplus */
  5. typedef PVOID HREGANL;
  6. typedef
  7. HREGANL
  8. (*PFNCREATEREGANALYZER) (
  9. VOID
  10. );
  11. HREGANL
  12. CreateRegAnalyzer (
  13. VOID
  14. );
  15. typedef
  16. BOOL
  17. (*PFNCLOSEREGANALYZER) (
  18. IN HREGANL RegAnalyzer
  19. );
  20. BOOL
  21. CloseRegAnalyzer (
  22. IN HREGANL RegAnalyzer
  23. );
  24. typedef
  25. BOOL
  26. (PFNADDREGISTRYKEY) (
  27. IN HREGANL RegAnalyzer,
  28. IN PCTSTR RootKeyName,
  29. IN PCTSTR SubKeyName
  30. );
  31. BOOL
  32. AddRegistryKey (
  33. IN HREGANL RegAnalyzer,
  34. IN PCTSTR RootKeyName,
  35. IN PCTSTR SubKeyName
  36. );
  37. typedef
  38. BOOL
  39. (*PFNEXCLUDEREGISTRYKEY) (
  40. IN HREGANL RegAnalyzer,
  41. IN PCTSTR RootKeyName,
  42. IN PCTSTR SubKeyName
  43. );
  44. BOOL
  45. ExcludeRegistryKey (
  46. IN HREGANL RegAnalyzer,
  47. IN PCTSTR RootKeyName,
  48. IN PCTSTR SubKeyName
  49. );
  50. typedef
  51. DWORD
  52. SNAPSHOTPROGRESS (
  53. IN PVOID Context,
  54. IN DWORD NodesProcessed
  55. );
  56. typedef SNAPSHOTPROGRESS* PFNSNAPSHOTPROGRESS;
  57. typedef
  58. BOOL
  59. (*PFNTAKESNAPSHOT) (
  60. IN HREGANL RegAnalyzer,
  61. IN PCTSTR SnapshotFile,
  62. IN PFNSNAPSHOTPROGRESS ProgressCallback,
  63. IN PVOID Context,
  64. IN DWORD MaxLevel
  65. );
  66. BOOL
  67. TakeSnapshot (
  68. IN HREGANL RegAnalyzer,
  69. IN PCTSTR SnapshotFile,
  70. IN PFNSNAPSHOTPROGRESS ProgressCallback,
  71. IN PVOID Context,
  72. IN DWORD MaxLevel,
  73. IN HANDLE hEvent);
  74. typedef
  75. BOOL
  76. (*PFNCOMPUTEDIFFERENCES) (
  77. IN HREGANL RegAnalyzer,
  78. IN PCTSTR Snapshot1,
  79. IN PCTSTR Snapshot2,
  80. IN PCTSTR DiffFile
  81. );
  82. BOOL
  83. ComputeDifferences (
  84. IN HREGANL RegAnalyzer,
  85. IN PCTSTR Snapshot1,
  86. IN PCTSTR Snapshot2,
  87. IN PCTSTR DiffFile,
  88. IN HANDLE hEvent
  89. );
  90. typedef
  91. BOOL
  92. (*PFNINSTALLDIFFERENCES) (
  93. IN PCTSTR DiffFile,
  94. IN PCTSTR UndoFile
  95. );
  96. BOOL
  97. InstallDifferences (
  98. IN PCTSTR DiffFile,
  99. IN PCTSTR UndoFile
  100. );
  101. typedef
  102. BOOL
  103. (*PFNCOUNTREGSUBKEYS) (
  104. IN PCTSTR Root,
  105. IN PCTSTR SubKey,
  106. IN DWORD MaxLevels,
  107. OUT PDWORD Nodes
  108. );
  109. BOOL
  110. CountRegSubkeys (
  111. IN PCTSTR Root,
  112. IN PCTSTR SubKey,
  113. IN DWORD MaxLevels,
  114. OUT PDWORD Nodes
  115. );
  116. typedef
  117. HKEY
  118. (*PFNGETROOTKEY) (
  119. IN PCTSTR RootStr
  120. );
  121. HKEY
  122. GetRootKey (
  123. IN PCTSTR RootStr
  124. );
  125. #ifdef __cplusplus
  126. }
  127. #endif /* __cplusplus */