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.

218 lines
9.8 KiB

  1. <html xmlns:o="urn:schemas-microsoft-com:office:office"
  2. xmlns:w="urn:schemas-microsoft-com:office:word"
  3. xmlns:st1="urn:schemas-microsoft-com:office:smarttags"
  4. xmlns="http://www.w3.org/TR/REC-html40">
  5. <head>
  6. <meta http-equiv=Content-Type content="text/html; charset=windows-1252">
  7. <meta name=ProgId content=Word.Document>
  8. <meta name=Generator content="Microsoft Word 10">
  9. <meta name=Originator content="Microsoft Word 10">
  10. <link rel=File-List href="localmon_files/filelist.xml">
  11. <title>LocalMon</title>
  12. <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
  13. name="place"/>
  14. <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
  15. name="PlaceType"/>
  16. <o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
  17. name="PlaceName"/>
  18. <!--[if gte mso 9]><xml>
  19. <w:WordDocument>
  20. <w:SpellingState>Clean</w:SpellingState>
  21. <w:GrammarState>Clean</w:GrammarState>
  22. <w:Compatibility>
  23. <w:ApplyBreakingRules/>
  24. </w:Compatibility>
  25. <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
  26. </w:WordDocument>
  27. </xml><![endif]--><!--[if !mso]><object
  28. classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object>
  29. <style>
  30. st1\:*{behavior:url(#ieooui) }
  31. </style>
  32. <![endif]-->
  33. <style>
  34. <!--
  35. /* Font Definitions */
  36. @font-face
  37. {font-family:Verdana;
  38. panose-1:2 11 6 4 3 5 4 4 2 4;
  39. mso-font-charset:0;
  40. mso-generic-font-family:swiss;
  41. mso-font-pitch:variable;
  42. mso-font-signature:536871559 0 0 0 415 0;}
  43. @font-face
  44. {font-family:"MS Sans Serif";
  45. panose-1:0 0 0 0 0 0 0 0 0 0;
  46. mso-font-charset:0;
  47. mso-generic-font-family:swiss;
  48. mso-font-format:other;
  49. mso-font-pitch:variable;
  50. mso-font-signature:3 0 0 0 1 0;}
  51. /* Style Definitions */
  52. p.MsoNormal, li.MsoNormal, div.MsoNormal
  53. {mso-style-parent:"";
  54. margin:0in;
  55. margin-bottom:.0001pt;
  56. mso-pagination:widow-orphan;
  57. font-size:12.0pt;
  58. font-family:"Times New Roman";
  59. mso-fareast-font-family:"Times New Roman";}
  60. a:link, span.MsoHyperlink
  61. {color:blue;
  62. text-decoration:underline;
  63. text-underline:single;}
  64. a:visited, span.MsoHyperlinkFollowed
  65. {color:blue;
  66. text-decoration:underline;
  67. text-underline:single;}
  68. p
  69. {mso-margin-top-alt:auto;
  70. margin-right:0in;
  71. mso-margin-bottom-alt:auto;
  72. margin-left:0in;
  73. mso-pagination:widow-orphan;
  74. font-size:12.0pt;
  75. font-family:"Times New Roman";
  76. mso-fareast-font-family:"Times New Roman";}
  77. pre
  78. {margin:0in;
  79. margin-bottom:.0001pt;
  80. mso-pagination:widow-orphan;
  81. 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;
  82. font-size:10.0pt;
  83. font-family:"Courier New";
  84. mso-fareast-font-family:"Times New Roman";}
  85. span.grame
  86. {mso-style-name:grame;}
  87. span.SpellE
  88. {mso-style-name:"";
  89. mso-spl-e:yes;}
  90. span.GramE
  91. {mso-style-name:"";
  92. mso-gram-e:yes;}
  93. @page Section1
  94. {size:8.5in 11.0in;
  95. margin:1.0in 1.25in 1.0in 1.25in;
  96. mso-header-margin:.5in;
  97. mso-footer-margin:.5in;
  98. mso-paper-source:0;}
  99. div.Section1
  100. {page:Section1;}
  101. -->
  102. </style>
  103. <!--[if gte mso 10]>
  104. <style>
  105. /* Style Definitions */
  106. table.MsoNormalTable
  107. {mso-style-name:"Table Normal";
  108. mso-tstyle-rowband-size:0;
  109. mso-tstyle-colband-size:0;
  110. mso-style-noshow:yes;
  111. mso-style-parent:"";
  112. mso-padding-alt:0in 5.4pt 0in 5.4pt;
  113. mso-para-margin:0in;
  114. mso-para-margin-bottom:.0001pt;
  115. mso-pagination:widow-orphan;
  116. font-size:10.0pt;
  117. font-family:"Times New Roman";}
  118. </style>
  119. <![endif]-->
  120. </head>
  121. <body lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
  122. <div class=Section1>
  123. <h2><span class=SpellE><span style='font-family:Verdana'>LocalMon</span></span><span
  124. style='font-family:Verdana'>: </span><st1:place><st1:PlaceName><span
  125. style='font-family:Verdana'>Sample</span></st1:PlaceName><span
  126. style='font-family:Verdana'> </span><st1:PlaceType><span style='font-family:
  127. Verdana'>Port</span></st1:PlaceType></st1:place><span style='font-family:
  128. Verdana'> Monitor Server DLL<o:p></o:p></span></h2>
  129. <h3><span style='font-family:Verdana'>SUMMARY<o:p></o:p></span></h3>
  130. <p><span style='font-size:10.0pt;font-family:Verdana'>A port monitor DLL is a
  131. user-mode DLL that is responsible for providing a communications path between
  132. the user-mode print spooler and the kernel-mode port drivers that access I/O
  133. port hardware. Please refer to the DDK documentation for further information about
  134. print monitors. <o:p></o:p></span></p>
  135. <p><span style='font-size:10.0pt;font-family:Verdana'>This sample runs on the <span
  136. class=GramE><span class=grame>x86 platform</span></span> and the code is 64-bit
  137. compliant. <o:p></o:p></span></p>
  138. <h3><span style='font-family:Verdana'>BUILDING THE SAMPLE<o:p></o:p></span></h3>
  139. <p><span style='font-size:10.0pt;font-family:Verdana'>To build the sample, run <b>build</b>
  140. from this directory. Once built, the sample will produce the binary
  141. DDKLocalmon.dll. <o:p></o:p></span></p>
  142. <p><span style='font-size:10.0pt;font-family:Verdana'>The INF file <span
  143. class=SpellE>monitor.inf</span> is used for installing the port monitor. Both
  144. the port <span class=GramE>monitor</span> DLL and the port monitor�s user
  145. interface DLL are installed using the <span class=SpellE>monitor.inf</span>
  146. file. <o:p></o:p></span></p>
  147. <h3><span style='font-family:Verdana'>CODE TOUR<o:p></o:p></span></h3>
  148. <h4><span style='font-family:Verdana'>File Manifest<o:p></o:p></span></h4>
  149. <pre><u>File<span style='mso-tab-count:2'>���������� </span>Description<o:p></o:p></u></pre><pre>&nbsp;</pre><pre><span
  150. class=SpellE>Config.c</span><span style='mso-tab-count:1'>������ </span>Handles spooler entry points for adding, deleting, and configuring <span
  151. class=SpellE>localmon</span> ports </pre><pre><span
  152. class=SpellE>Lmon.h</span><span style='mso-spacerun:yes'></span><span
  153. style='mso-tab-count:1'>������ </span>Header that declares PORT_INFO_FF structure </pre><pre><span
  154. class=SpellE>Irda.c</span><span style='mso-tab-count:2'>�������� </span>IRDA printing support in <span
  155. class=SpellE>localmon</span></pre><pre><span class=SpellE>Irda.h</span><span
  156. style='mso-tab-count:2'>�������� </span>Header for IRDA</pre><pre><span
  157. class=SpellE>Local.h</span> <span style='mso-tab-count:1'>������ </span>Header that declares debug functions</pre><pre><span
  158. class=SpellE>Localmon.c</span><span style='mso-tab-count:1'>���� </span>Source module that contains the DLL entry point </pre><pre><span
  159. class=SpellE>Localmon.def</span><span style='mso-tab-count:1'>�� </span>File that lists the exported functions </pre><pre><span
  160. class=SpellE>Localmon.prf</span><span style='mso-tab-count:1'>�� </span>Resource file for the dialogs </pre><pre><span
  161. class=SpellE>Localmon.h</span><span style='mso-tab-count:1'>���� </span>Header for global declarations and function prototypes </pre><pre>Localmon.htm<span
  162. style='mso-tab-count:1'>�� </span>Documentation for this sample (this file)</pre><pre><span
  163. class=SpellE>Localmon.rc</span><span style='mso-tab-count:1'>��� </span>Resource file for the module </pre><pre><span
  164. class=SpellE>Makefile</span><span style='mso-tab-count:1'>������ </span>Generic file for building the code sample</pre><pre><span
  165. class=SpellE>Precomp.h</span><span style='mso-tab-count:1'>����� </span>Generic header</pre><pre><span
  166. class=SpellE>Resource.rcv</span><span style='mso-tab-count:1'>�� </span>Resource version file</pre><pre><span
  167. class=SpellE>Resource.h</span><span style='mso-tab-count:1'>���� </span>Resource header file</pre><pre><span
  168. class=SpellE>Setlink.c</span><span style='mso-tab-count:1'>����� </span>Utility to display or change the value of a symbolic link </pre><pre>Sources <span
  169. style='mso-tab-count:1'>������ </span>Generic file for building the code sample</pre><pre><span
  170. class=SpellE>Spltypes.h</span><span style='mso-tab-count:1'>���� </span>Header for <span
  171. class=SpellE>Winspool.c</span> </pre><pre><span class=SpellE>Util.c</span><span style='mso-spacerun:yes'></span><span
  172. style='mso-tab-count:1'>������ </span>Source module for support routines</pre><pre><span
  173. class=SpellE>Winspool.c</span><span style='mso-tab-count:1'>���� </span>Implements the spooler supported APIs for printing</pre><pre><span
  174. class=SpellE>Xcv.c</span><span style='mso-tab-count:2'>��������� </span>Interface for calling<span style='mso-spacerun:yes'></span>print spooler's <span
  175. class=SpellE>XcvData</span> (<span class=SpellE>transceive</span> data) functions. This is the means by which a port monitor UI DLL communicates with its associated port monitor server DLL. </pre><pre>&nbsp;</pre><pre>&nbsp;</pre>
  176. <p align=center style='text-align:center;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
  177. style='font-size:10.0pt;font-family:"Courier New"'><a href="#top"><span
  178. style='font-family:Verdana'>Top of page</span></a></span><span
  179. style='font-size:10.0pt;font-family:Verdana;mso-bidi-font-family:"Courier New"'>
  180. <o:p></o:p></span></p>
  181. <pre>&nbsp;</pre>
  182. <table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width=624
  183. style='width:6.5in;mso-cellspacing:0in;mso-padding-alt:0in 0in 0in 0in'>
  184. <tr style='mso-yfti-irow:0;mso-yfti-lastrow:yes;height:1.5pt'>
  185. <td style='background:aqua;padding:.75pt .75pt .75pt .75pt;height:1.5pt'>
  186. <p class=MsoNormal>&nbsp;</p>
  187. </td>
  188. </tr>
  189. </table>
  190. <pre>&nbsp;</pre><pre>&nbsp;</pre>
  191. <p style='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
  192. style='font-size:7.5pt;font-family:"MS Sans Serif";mso-bidi-font-family:"Courier New"'>�
  193. 1999 Microsoft Corporation</span><span style='font-size:10.0pt;font-family:
  194. Verdana;mso-bidi-font-family:"Courier New"'> <o:p></o:p></span></p>
  195. </div>
  196. </body>
  197. </html>