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

<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:st1="urn:schemas-microsoft-com:office:smarttags"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 10">
<meta name=Originator content="Microsoft Word 10">
<link rel=File-List href="localmon_files/filelist.xml">
<title>LocalMon</title>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
name="place"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
name="PlaceType"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
name="PlaceName"/>
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:SpellingState>Clean</w:SpellingState>
<w:GrammarState>Clean</w:GrammarState>
<w:Compatibility>
<w:ApplyBreakingRules/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!--[if !mso]><object
classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object>
<style>
st1\:*{behavior:url(#ieooui) }
</style>
<![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Verdana;
panose-1:2 11 6 4 3 5 4 4 2 4;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-pitch:variable;
mso-font-signature:536871559 0 0 0 415 0;}
@font-face
{font-family:"MS Sans Serif";
panose-1:0 0 0 0 0 0 0 0 0 0;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-format:other;
mso-font-pitch:variable;
mso-font-signature:3 0 0 0 1 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;
text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
{color:blue;
text-decoration:underline;
text-underline:single;}
p
{mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
pre
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
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;
font-size:10.0pt;
font-family:"Courier New";
mso-fareast-font-family:"Times New Roman";}
span.grame
{mso-style-name:grame;}
span.SpellE
{mso-style-name:"";
mso-spl-e:yes;}
span.GramE
{mso-style-name:"";
mso-gram-e:yes;}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
</style>
<![endif]-->
</head>
<body lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h2><span class=SpellE><span style='font-family:Verdana'>LocalMon</span></span><span
style='font-family:Verdana'>: </span><st1:place><st1:PlaceName><span
style='font-family:Verdana'>Sample</span></st1:PlaceName><span
style='font-family:Verdana'> </span><st1:PlaceType><span style='font-family:
Verdana'>Port</span></st1:PlaceType></st1:place><span style='font-family:
Verdana'> Monitor Server DLL<o:p></o:p></span></h2>
<h3><span style='font-family:Verdana'>SUMMARY<o:p></o:p></span></h3>
<p><span style='font-size:10.0pt;font-family:Verdana'>A port monitor DLL is a
user-mode DLL that is responsible for providing a communications path between
the user-mode print spooler and the kernel-mode port drivers that access I/O
port hardware. Please refer to the DDK documentation for further information about
print monitors. <o:p></o:p></span></p>
<p><span style='font-size:10.0pt;font-family:Verdana'>This sample runs on the <span
class=GramE><span class=grame>x86 platform</span></span> and the code is 64-bit
compliant. <o:p></o:p></span></p>
<h3><span style='font-family:Verdana'>BUILDING THE SAMPLE<o:p></o:p></span></h3>
<p><span style='font-size:10.0pt;font-family:Verdana'>To build the sample, run <b>build</b>
from this directory. Once built, the sample will produce the binary
DDKLocalmon.dll. <o:p></o:p></span></p>
<p><span style='font-size:10.0pt;font-family:Verdana'>The INF file <span
class=SpellE>monitor.inf</span> is used for installing the port monitor. Both
the port <span class=GramE>monitor</span> DLL and the port monitor’s user
interface DLL are installed using the <span class=SpellE>monitor.inf</span>
file. <o:p></o:p></span></p>
<h3><span style='font-family:Verdana'>CODE TOUR<o:p></o:p></span></h3>
<h4><span style='font-family:Verdana'>File Manifest<o:p></o:p></span></h4>
<pre><u>File<span style='mso-tab-count:2'>           </span>Description<o:p></o:p></u></pre><pre>&nbsp;</pre><pre><span
class=SpellE>Config.c</span><span style='mso-tab-count:1'>       </span>Handles spooler entry points for adding, deleting, and configuring <span
class=SpellE>localmon</span> ports </pre><pre><span
class=SpellE>Lmon.h</span><span style='mso-spacerun:yes'>  </span><span
style='mso-tab-count:1'>       </span>Header that declares PORT_INFO_FF structure </pre><pre><span
class=SpellE>Irda.c</span><span style='mso-tab-count:2'>         </span>IRDA printing support in <span
class=SpellE>localmon</span></pre><pre><span class=SpellE>Irda.h</span><span
style='mso-tab-count:2'>         </span>Header for IRDA</pre><pre><span
class=SpellE>Local.h</span> <span style='mso-tab-count:1'>       </span>Header that declares debug functions</pre><pre><span
class=SpellE>Localmon.c</span><span style='mso-tab-count:1'>     </span>Source module that contains the DLL entry point </pre><pre><span
class=SpellE>Localmon.def</span><span style='mso-tab-count:1'>   </span>File that lists the exported functions </pre><pre><span
class=SpellE>Localmon.prf</span><span style='mso-tab-count:1'>   </span>Resource file for the dialogs </pre><pre><span
class=SpellE>Localmon.h</span><span style='mso-tab-count:1'>     </span>Header for global declarations and function prototypes </pre><pre>Localmon.htm<span
style='mso-tab-count:1'>   </span>Documentation for this sample (this file)</pre><pre><span
class=SpellE>Localmon.rc</span><span style='mso-tab-count:1'>    </span>Resource file for the module </pre><pre><span
class=SpellE>Makefile</span><span style='mso-tab-count:1'>       </span>Generic file for building the code sample</pre><pre><span
class=SpellE>Precomp.h</span><span style='mso-tab-count:1'>      </span>Generic header</pre><pre><span
class=SpellE>Resource.rcv</span><span style='mso-tab-count:1'>   </span>Resource version file</pre><pre><span
class=SpellE>Resource.h</span><span style='mso-tab-count:1'>     </span>Resource header file</pre><pre><span
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
style='mso-tab-count:1'>       </span>Generic file for building the code sample</pre><pre><span
class=SpellE>Spltypes.h</span><span style='mso-tab-count:1'>     </span>Header for <span
class=SpellE>Winspool.c</span> </pre><pre><span class=SpellE>Util.c</span><span style='mso-spacerun:yes'>  </span><span
style='mso-tab-count:1'>       </span>Source module for support routines</pre><pre><span
class=SpellE>Winspool.c</span><span style='mso-tab-count:1'>     </span>Implements the spooler supported APIs for printing</pre><pre><span
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
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>
<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
style='font-size:10.0pt;font-family:"Courier New"'><a href="#top"><span
style='font-family:Verdana'>Top of page</span></a></span><span
style='font-size:10.0pt;font-family:Verdana;mso-bidi-font-family:"Courier New"'>
<o:p></o:p></span></p>
<pre>&nbsp;</pre>
<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width=624
style='width:6.5in;mso-cellspacing:0in;mso-padding-alt:0in 0in 0in 0in'>
<tr style='mso-yfti-irow:0;mso-yfti-lastrow:yes;height:1.5pt'>
<td style='background:aqua;padding:.75pt .75pt .75pt .75pt;height:1.5pt'>
<p class=MsoNormal>&nbsp;</p>
</td>
</tr>
</table>
<pre>&nbsp;</pre><pre>&nbsp;</pre>
<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
style='font-size:7.5pt;font-family:"MS Sans Serif";mso-bidi-font-family:"Courier New"'>©
1999 Microsoft Corporation</span><span style='font-size:10.0pt;font-family:
Verdana;mso-bidi-font-family:"Courier New"'> <o:p></o:p></span></p>
</div>
</body>
</html>