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.
 
 
 
 
 
 

255 lines
10 KiB

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./testmcro_files/filelist.xml">
<title>Testmcro</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Dave Parsons</o:Author>
<o:LastAuthor>Dave Parsons</o:LastAuthor>
<o:Revision>3</o:Revision>
<o:TotalTime>340</o:TotalTime>
<o:Created>1999-11-18T21:58:00Z</o:Created>
<o:LastSaved>2000-02-02T23:23:00Z</o:LastSaved>
<o:Pages>2</o:Pages>
<o:Words>477</o:Words>
<o:Characters>2720</o:Characters>
<o:Company>Microsoft Corp.</o:Company>
<o:Lines>22</o:Lines>
<o:Paragraphs>5</o:Paragraphs>
<o:CharactersWithSpaces>3340</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:HideSpellingErrors/>
<w:HideGrammaticalErrors/>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* 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";
color:black;}
h1
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:1;
font-size:24.0pt;
font-family:"Times New Roman";
color:black;
mso-font-kerning:18.0pt;
font-weight:bold;}
h2
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:2;
font-size:18.0pt;
font-family:"Times New Roman";
color:black;
font-weight:bold;}
h3
{margin-right:0in;
mso-margin-top-alt:auto;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:3;
font-size:13.5pt;
font-family:"Times New Roman";
color:black;
font-weight:bold;}
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
{margin-right:0in;
mso-margin-top-alt:auto;
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";
color:black;}
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:"Courier New";
color:black;}
@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;}
/* List Definitions */
@list l0
{mso-list-id:371000526;
mso-list-type:hybrid;
mso-list-template-ids:619977120 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l1
{mso-list-id:745304408;
mso-list-type:hybrid;
mso-list-template-ids:501628894 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l2
{mso-list-id:1382750078;
mso-list-type:hybrid;
mso-list-template-ids:-98557440 -1634539084 1364493882 -555997176 1048594918 1907263124 1809221600 353402950 -1899568204 803906870;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'
leftmargin=8>
<div class=Section1>
<h1><a name=MYSAMPLE>Sample WIA Microdriver</a></h1>
<h1><span style='font-size:14.0pt;mso-bidi-font-size:24.0pt;color:red'>[This is
preliminary documentation and subject to change.]<o:p></o:p></span></h1>
<h2>SUMMARY</h2>
<p>This sample shows how to write a Windows Image Acquisition (WIA) Microdriver
for a flatbed scanner. The Microdriver architecture is functionally reduced
from the WIA Minidriver architecture, but supports the primary scanning
functions. Documentation on WIA Microdrivers is provided in the &#8220;Windows DDK
&#8221;. This sample driver can be used as a starting
point for your development, but your driver should access the scanner hardware
through one of the kernel drivers provided with Windows.</p>
<p>This
sample will not work on Windows 98 or Windows 2000.</p>
<h3>BUILDING THE SAMPLE</h3>
<p>To build the sample follow these steps:</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
tab-stops:list .5in'><![if !supportLists]>1.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>In the Start menu, select<span style="mso-spacerun:
yes">&nbsp; </span>&quot;Free Build Environment&quot; or &quot;Checked Build
Environment&quot; under &quot;Windows DDK&quot; to open a command window and
set basic environment variables needed to build drivers. </p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
tab-stops:list .5in'><![if !supportLists]>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>Change to the directory containing the sample driver source
code, src\preview\wdm\wia\microdrv.</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo2;
tab-stops:list .5in'><![if !supportLists]>3.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>Execute the &quot;build&quot; command. After the build
completes, a driver named Testmcro.dll will be located in a subdirectory.</p>
<h3>USING THE SAMPLE<o:p></o:p></h3>
<p><! ---------------- Snip Snip ---------------- >To use the driver, first
install it following these steps: </p>
<ol start=1 type=1>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo5;tab-stops:list .5in'>Copy Testmcro.dll from the
subdirectory under Microdrv to a new, empty directory.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo5;tab-stops:list .5in'>Copy Testmcro.inf from the
Microdrv directory to the same directory.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo5;tab-stops:list .5in'>In Millennium, open the &#8220;New
Device&#8221; icon in the Scanners and Cameras control panel.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo5;tab-stops:list .5in'>Click the &#8220;Have Disk&#8221; button
and enter the name of the folder created in step 1.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo5;tab-stops:list .5in'>Click OK, Next, or Finish
until the wizard is finished.</li>
</ol>
<p>To test this driver, open the Scanners and Cameras folder in Explorer or use
the Wiatest application.</p>
<p>Use one of these options to test this driver:</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo7;
tab-stops:list .5in'><![if !supportLists]>1.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>The Scanners and Cameras Wizard accessible from the Start
menu.</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo7;
tab-stops:list .5in'><![if !supportLists]>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>The Namespace extension accessible by opening the camera in
Explorer.</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo7;
tab-stops:list .5in'><![if !supportLists]>3.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>The Wiatest application is provided in this DDK.</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo7;
tab-stops:list .5in'><![if !supportLists]>4.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>Microsoft Paint, a native WIA application.</p>
<p style='margin-left:.5in;text-indent:-.25in;mso-list:l1 level1 lfo7;
tab-stops:list .5in'><![if !supportLists]>5.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><![endif]>Any TWAIN compliant application.</p>
<h3>RESOURCES</h3>
<p>WIA information: <a href="http://www.microsoft.com/hwdev/tech/wia">http://www.microsoft.com/hwdev/tech/wia</a></p>
<p>DDK information: <a href="http://www.microsoft.com/ddk/">http://www.microsoft.com/ddk/</a></p>
<h3>CODE TOUR</h3>
<h3>File Manifest</h3>
<pre>Files<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Description</pre><pre>------------ -------------------------------------------------------</pre><pre>testmcro.cpp Implements the Microdriver</pre><pre>makefile<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>Used for building the driver--do not modify</pre><pre>resource.h<span style="mso-spacerun: yes">&nbsp;&nbsp; </span>Header file for resources</pre><pre>sources<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Controls building of driver</pre><pre>testmcro.def Linker command file</pre><pre>testmcro.htm This readme</pre><pre>testmcro.inf Installation file</pre><pre>testmcro.h <span style="mso-spacerun: yes">&nbsp;&nbsp;</span>Main header file</pre><pre>testmcro.rc<span style="mso-spacerun: yes">&nbsp; </span>Resource definitions</pre><pre>testmcro.rcv<span style="mso-spacerun: yes">&nbsp;</span>Resource definitions</pre>
</div>
</body>
</html>