Source code of Windows XP (NT5)
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.

212 lines
6.0 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1999 - 1999
  6. //
  7. // File: stdafx.h
  8. //
  9. //--------------------------------------------------------------------------
  10. // stdafx.h : include file for standard system include files,
  11. // or project specific include files that are used frequently,
  12. // but are changed infrequently
  13. #undef _MSC_EXTENSIONS
  14. #define ASSERT(x) _ASSERTE(x)
  15. #include <new.h>
  16. #include <crtdbg.h>
  17. #define OEMRESOURCE 1
  18. #include <windows.h>
  19. #include <shellapi.h>
  20. #include <mmctempl.h>
  21. #include <objidl.h>
  22. #include <commctrl.h>
  23. #include <mmcmt.h>
  24. //############################################################################
  25. //############################################################################
  26. //
  27. // MMC headers
  28. //
  29. //############################################################################
  30. #include <mmc.h>
  31. #include <ndmgr.h>
  32. #include <ndmgrpriv.h>
  33. #include <mmcptrs.h>
  34. //############################################################################
  35. //############################################################################
  36. //
  37. // ATL
  38. //
  39. //############################################################################
  40. //############################################################################
  41. // The #define below is to work around an ATL bug causing bug C2872
  42. #define MMC_ATL ::ATL
  43. #define _WTL_NO_AUTOMATIC_NAMESPACE
  44. #include <atlbase.h>
  45. using namespace MMC_ATL;
  46. //You may derive a class from CComModule and use it if you want to override
  47. //something, but do not change the name of _Module
  48. extern CComModule _Module; // Needs to be declared BEFORE atlcom.h
  49. #include <atlcom.h>
  50. #include <atlwin.h>
  51. #include <atlapp.h>
  52. #include <atlmisc.h>
  53. #include <atlctrls.h>
  54. #include <atlgdi.h>
  55. #include <atlctl.h>
  56. #include <dlgs.h>
  57. #include <atldlgs.h>
  58. //############################################################################
  59. //############################################################################
  60. //
  61. // STL and other classes
  62. //
  63. //############################################################################
  64. //############################################################################
  65. #include <algorithm>
  66. #include <exception>
  67. #include <string>
  68. #include <list>
  69. #include <set>
  70. #include <vector>
  71. #include <map>
  72. #include <iterator>
  73. //############################################################################
  74. //############################################################################
  75. // definition to compile code specific to node manager dll
  76. #define _MMC_NODE_MANAGER_ONLY_
  77. //############################################################################
  78. //############################################################################
  79. //
  80. // Files #included from base and core.
  81. //
  82. //############################################################################
  83. //############################################################################
  84. #include "dbg.h"
  85. #include "cstr.h"
  86. #include "mmcdebug.h"
  87. #include "mmcerror.h"
  88. #include "tiedobj.h"
  89. #include "comerror.h"
  90. #include "events.h" // Observer pattern implementation.
  91. #include "strings.h"
  92. // included from NODEMGR (needs some BASE stuff, redefines some as well)
  93. #include "typeinfo.h" // defines IDispatchImpl substitution for node manager
  94. #include "AutoPtr.h"
  95. #include "comobjects.h"
  96. #include "enumerator.h"
  97. //############################################################################
  98. //############################################################################
  99. //
  100. // include common and nodemgr-only strings.
  101. //
  102. //############################################################################
  103. //############################################################################
  104. #include "..\base\basestr.h"
  105. #include "..\base\nodemgrstr.h"
  106. //############################################################################
  107. //############################################################################
  108. //
  109. // Debug support for legacy traces.
  110. //
  111. //############################################################################
  112. //############################################################################
  113. #ifdef DBG
  114. #define TRACE TraceNodeMgrLegacy
  115. #else // DBG
  116. #define TRACE ;/##/
  117. #endif DBG
  118. //############################################################################
  119. //############################################################################
  120. //
  121. // Other files
  122. //
  123. //############################################################################
  124. //############################################################################
  125. #include "mmcatl.h"
  126. #include "regkeyex.h"
  127. #include "guidhelp.h"
  128. #include "macros.h"
  129. #include "moreutil.h"
  130. #include "amcmsgid.h"
  131. #include "mfccllct.h"
  132. #include "mmcutil.h"
  133. #include "countof.h"
  134. #include "stgio.h"
  135. #include "serial.h"
  136. #include "stlstuff.h"
  137. #include "bookmark.h"
  138. #include "xmlbase.h"
  139. #include "resultview.h"
  140. #include "viewset.h"
  141. #include "memento.h"
  142. #include "objmodelptrs.h"
  143. #include "mmcdata.h"
  144. #include "viewdata.h"
  145. #include "cpputil.h"
  146. class CComponent;
  147. class CMTNode;
  148. typedef CComponent* PCOMPONENT;
  149. typedef std::vector<PCOMPONENT> CComponentArray;
  150. typedef CMTNode* PMTNODE;
  151. typedef std::vector<PMTNODE> CMTNodePtrArray;
  152. //############################################################################
  153. //############################################################################
  154. //
  155. // Files from the nodemgr subsystem
  156. //
  157. //############################################################################
  158. //############################################################################
  159. #include "mmcres.h"
  160. #include "resource.h"
  161. #include "helparr.h"
  162. #include "classreg.h"
  163. #include "snapin.h"
  164. #include "npd.h"
  165. #include "nmtempl.h"
  166. #include "imageid.h"
  167. #include "amcpriv.h"
  168. #include "containr.h"
  169. #include "ststring.h"
  170. #include "nodepath.h"
  171. #include "mtnode.h"
  172. #include "node.h"
  173. #include "propsht.h"
  174. #include "coldata.h"
  175. #include "toolbar.h"
  176. #include "ctrlbar.h"
  177. #include "verbs.h"
  178. #include "scoptree.h"
  179. #include "nodeinit.h"
  180. #include "wiz97.h"