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.

205 lines
10 KiB

  1. <html xmlns:o="urn:schemas-microsoft-com:office:office"
  2. xmlns:w="urn:schemas-microsoft-com:office:word"
  3. xmlns="http://www.w3.org/TR/REC-html40">
  4. <head>
  5. <meta http-equiv=Content-Type content="text/html; charset=us-ascii">
  6. <meta name=ProgId content=Word.Document>
  7. <meta name=Generator content="Microsoft Word 9">
  8. <meta name=Originator content="Microsoft Word 9">
  9. <link rel=File-List href="./cdmprov_files/filelist.xml">
  10. <title>WMIFilt</title>
  11. <style>
  12. <!--
  13. /* Font Definitions */
  14. @font-face
  15. {font-family:"MS Sans Serif";
  16. panose-1:0 0 0 0 0 0 0 0 0 0;
  17. mso-font-charset:0;
  18. mso-generic-font-family:swiss;
  19. mso-font-format:other;
  20. mso-font-pitch:variable;
  21. mso-font-signature:3 0 0 0 1 0;}
  22. @font-face
  23. {font-family:Verdana;
  24. panose-1:2 11 6 4 3 5 4 4 2 4;
  25. mso-font-charset:0;
  26. mso-generic-font-family:swiss;
  27. mso-font-pitch:variable;
  28. mso-font-signature:536871559 0 0 0 415 0;}
  29. /* Style Definitions */
  30. p.MsoNormal, li.MsoNormal, div.MsoNormal
  31. {mso-style-parent:"";
  32. margin:0in;
  33. margin-bottom:.0001pt;
  34. mso-pagination:widow-orphan;
  35. font-size:12.0pt;
  36. font-family:"Times New Roman";
  37. mso-fareast-font-family:"Times New Roman";}
  38. a:link, span.MsoHyperlink
  39. {color:blue;
  40. text-decoration:underline;
  41. text-underline:single;}
  42. a:visited, span.MsoHyperlinkFollowed
  43. {color:blue;
  44. text-decoration:underline;
  45. text-underline:single;}
  46. p
  47. {margin-right:0in;
  48. mso-margin-top-alt:auto;
  49. mso-margin-bottom-alt:auto;
  50. margin-left:0in;
  51. mso-pagination:widow-orphan;
  52. font-size:12.0pt;
  53. font-family:"Times New Roman";
  54. mso-fareast-font-family:"Times New Roman";}
  55. pre
  56. {margin:0in;
  57. margin-bottom:.0001pt;
  58. mso-pagination:widow-orphan;
  59. tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;
  60. font-size:10.0pt;
  61. font-family:"Courier New";
  62. mso-fareast-font-family:"Courier New";}
  63. @page Section1
  64. {size:8.5in 11.0in;
  65. margin:1.0in 1.25in 1.0in 1.25in;
  66. mso-header-margin:.5in;
  67. mso-footer-margin:.5in;
  68. mso-paper-source:0;}
  69. div.Section1
  70. {page:Section1;}
  71. /* List Definitions */
  72. @list l0
  73. {mso-list-id:465586843;
  74. mso-list-type:hybrid;
  75. mso-list-template-ids:-1321168666 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
  76. ol
  77. {margin-bottom:0in;}
  78. ul
  79. {margin-bottom:0in;}
  80. -->
  81. </style>
  82. </head>
  83. <body lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
  84. <div class=Section1>
  85. <h2><span style='font-family:Verdana'>CDMProv<o:p></o:p></span></h2>
  86. <p><span style='font-size:10.0pt;font-family:Arial;color:red'>[This is
  87. preliminary documentation and subject to change.]</span><span style='font-size:
  88. 10.0pt;font-family:Verdana'><o:p></o:p></span></p>
  89. <h3><span style='font-family:Verdana'>SUMMARY<o:p></o:p></span></h3>
  90. <p><span style='font-size:10.0pt;font-family:Verdana'>This is a sample WMI user
  91. mode provider that allows device drivers to expose diagnostic tests by means of
  92. the CIM Common Diagnostic Model (CDM). The driver writer will implement its
  93. diagnostics within the kernel mode device driver with WMI instrumentation and
  94. then write Managed Object Format for the CDM classes that refer to the WDM
  95. instrumentation. This sample, the CDM Provider, will expose the CDM classes on
  96. behalf of the device driver.<o:p></o:p></span></p>
  97. <h3><span style='font-family:Verdana'>BUILDING THE SAMPLE<o:p></o:p></span></h3>
  98. <p><span style='font-size:10.0pt;font-family:Verdana'>Follow these steps to
  99. build and run the CDM Provider with the sample code.<o:p></o:p></span></p>
  100. <p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  101. tab-stops:list .5in'><![if !supportLists]><span style='font-size:10.0pt;
  102. font-family:Verdana'>1.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  103. </span></span><![endif]><span style='font-size:10.0pt;font-family:Verdana'>Change
  104. the name of the provider from CdmProv to your own unique name and guid in
  105. cdmprov.mof.<o:p></o:p></span></p>
  106. <p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  107. tab-stops:list .5in'><![if !supportLists]><span style='font-size:10.0pt;
  108. font-family:Verdana'>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  109. </span></span><![endif]><span style='font-size:10.0pt;font-family:Verdana'>On
  110. your development machine run <b><i>build &#8211;cz</i></b> in the directory to create
  111. CDMProv.DLL<o:p></o:p></span></p>
  112. <p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  113. tab-stops:list .5in'><![if !supportLists]><span style='font-size:10.0pt;
  114. font-family:Verdana'>3.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  115. </span></span><![endif]><span style='font-size:10.0pt;font-family:Verdana'>On
  116. your target machine run <b><i>mofcomp cdmprov.mof</i></b> to include the CDM
  117. Provider specific information in the schema<o:p></o:p></span></p>
  118. <p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
  119. tab-stops:list .5in'><![if !supportLists]><span style='font-size:10.0pt;
  120. font-family:Verdana'>4.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  121. </span></span><![endif]><span style='font-size:10.0pt;font-family:Verdana'>On
  122. your target machine run <b><i>regsvr32 cdmprov.dll</i></b> to cause the
  123. provider to self register.<o:p></o:p></span></p>
  124. <h3><span style='font-family:Verdana'>RESOURCES<o:p></o:p></span></h3>
  125. <p><span style='font-size:10.0pt;font-family:Verdana'>Please see the DDK
  126. DiagFilt sample and the cdmwdm.doc reference information.<span
  127. style="mso-spacerun: yes">&nbsp; </span>Also see MSDN for more information on
  128. WMI user mode providers.<o:p></o:p></span></p>
  129. <h3><span style='font-family:Verdana'>CODE TOUR<o:p></o:p></span></h3>
  130. <h4><span style='font-family:Verdana'>File Manifest<o:p></o:p></span></h4>
  131. <pre><u>File<span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Description<o:p></o:p></u></pre><pre>cdmprov.htm<span
  132. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp; </span>This file</pre><pre>cdmprov.mof<span
  133. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp; </span>CDM Provider specific MOF</pre><pre>cdmprov.rc<span
  134. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>Resource Script file for CDM Provider</pre><pre>cdmwdm.htm<span
  135. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>Reference information for using CDM Provider</pre><pre>cimmap.cpp<span
  136. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>WDM to CIM mapping routines</pre><pre>cimmap.h<span
  137. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>WDM to CIM mapping routines</pre><pre>classfac.cpp<span
  138. style='mso-tab-count:1'>&nbsp;&nbsp; </span>Provider class factory routines</pre><pre>classprov.cpp<span
  139. style='mso-tab-count:1'>&nbsp; </span>Provider implementation routines</pre><pre>classprov.def<span
  140. style='mso-tab-count:1'>&nbsp; </span>Module definition file for provider</pre><pre>debug.cpp<span
  141. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Debugging routines</pre><pre>debug.h<span
  142. style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Debugging routines</pre><pre>maindll.cpp<span
  143. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp; </span>Main dll housing for provider</pre><pre>makefile<span
  144. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Build makefile</pre><pre>reload.cpp<span
  145. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>PnP device start restart routines</pre><pre>reload.h<span
  146. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>PnP device start restart routines</pre><pre>sample.h<span
  147. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Provider implementation routines</pre><pre>sources<span
  148. style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Build sources</pre><pre>testinfo.cpp<span
  149. style='mso-tab-count:1'>&nbsp;&nbsp; </span>WDM interface routines</pre><pre>testinfo.h<span
  150. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>WDM interface routines</pre><pre>wbemmisc.cpp<span
  151. style='mso-tab-count:1'>&nbsp;&nbsp; </span>Misc routines to interact with WMI</pre><pre>wbemmisc.h<span
  152. style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp;&nbsp; </span>Misc routines to interact with WMI</pre>
  153. <p style='margin:0in;margin-bottom:.0001pt;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  154. style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>
  155. <p align=center style='margin:0in;margin-bottom:.0001pt;text-align:center;
  156. tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  157. style='font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New"'><a
  158. href="#top"><span style='font-family:Verdana'>Top of page</span></a></span><span
  159. style='font-size:10.0pt;font-family:Verdana;mso-fareast-font-family:"Courier New";
  160. mso-bidi-font-family:"Courier New"'> <o:p></o:p></span></p>
  161. <pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre>
  162. <table border=0 cellspacing=0 cellpadding=0 width=624 style='width:6.5in;
  163. mso-cellspacing:0in;mso-padding-alt:0in 0in 0in 0in'>
  164. <tr style='height:1.5pt'>
  165. <td style='background:aqua;padding:.75pt .75pt .75pt .75pt;height:1.5pt'>
  166. <p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
  167. </td>
  168. </tr>
  169. </table>
  170. <pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre>
  171. <p style='margin:0in;margin-bottom:.0001pt;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
  172. style='font-size:7.5pt;font-family:"MS Sans Serif";mso-fareast-font-family:
  173. "Courier New";mso-bidi-font-family:"Courier New"'>&copy; 2000 Microsoft Corporation</span><span
  174. style='font-size:10.0pt;font-family:Verdana;mso-fareast-font-family:"Courier New";
  175. mso-bidi-font-family:"Courier New"'> <o:p></o:p></span></p>
  176. </div>
  177. </body>
  178. </html>