<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">
<META NAME="Generator" CONTENT="Microsoft Word 97">
<TITLE>MOUSER</TITLE>
<META NAME="Template" CONTENT="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot">
</HEAD>
<BODY TEXT="#000000" LINK="#0000ff" VLINK="#800080" BGCOLOR="#ffffff" leftmargin="8">
<FONT FACE="Verdana"><H2><A NAME="MYSAMPLE">MOUSER</A> </H2>
<span style="color:#FF0000">[This is preliminary documentation and subject to change.]</span>
<H3>SUMMARY</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
This serial mouse driver, which is compliant with Plug and Play, supports dynamic detection (via serenum) and removal (either hotplug or via the device manager). The code serves as a sample for any serial-enumerable device. The behavior of the various routines is documented in the source code files.<P>
The code works on Microsoft® Windows® 2000 or later platforms. This code will not work on previous versions of Windows NT® due to issues with support for Plug and Play, Power Management, and the new class drivers.<P>
The driver also supports Power Management; the mouse is powered down in low power state and is reset when powered up again. The driver works on both x86 and Alpha platforms.
<H3>BUILDING THE SAMPLE</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
The files necessary to build the sample include those in the directory and KbdMou.h, Ntddmou.h, Ntddser.h, wmistr.h. Once built, the sample produces one binary: Sermouse.sys. Both checked and free builds are available. <b>NOTE:</b> Wmilib.sys must be present on the target machine for the binary to load properly.
<H3>RESOURCES</H3></FONT><FONT FACE="Verdana" SIZE=2><P>
For the serial enumeration spec, read <A HREF="http://www.microsoft.com/hwdev/download/respec/pnpcom.rtf">http://www.microsoft.com/hwdev/download/respec/pnpcom.rtf</A>.
<H3>CODE TOUR</H3>
<H4>File Manifest</H4>
</FONT><U><PRE>File		 Description
</U>
Mouser.htm	 The documentation for this sample (this file).
Sources	 The generic file for building this code sample.
Cseries.c	 Detection code for CSeries type mice
Cseries.h	 Definitions for cseries.c
Debug.h	 Debug definitions
Detect.c	 Dynamic removal
Io.c	 Read IRP loop and initialization routines
Mouser.h	 Main header file
Mouser.rc	 Resources
Mseries.c	 Detection code for MSeries type mice
Mseries.h	 Definitions for mseries.c
Pnp.c	 Plug and Play and Power routines
Sermcmn.c	 Create and Close dispatch functions
Sermdep.c	 Misc initialization code, DriverEntry
Sermlog.mc	 Error definition file
Wmi.c	 System Control dispatch handler
Wrapper.c	 Wraps all IOCTL based queries
</FONT><P ALIGN="CENTER"><A HREF="#top"><FONT FACE="Verdana" SIZE=2>Top of page</FONT></A><FONT FACE="Verdana" SIZE=2> </P></FONT>
<TABLE CELLSPACING=0 BORDER=0 WIDTH=624>
<TR><TD VALIGN="MIDDLE" BGCOLOR="#00ffff" HEIGHT=2>
<P></TD>
</TR>
</TABLE>
<FONT FACE="MS Sans Serif" SIZE=1><P>© 1999 Microsoft Corporation</FONT><FONT FACE="Verdana" SIZE=2> </P></FONT></BODY>
</HTML>