VxD Include Files: Used for Building Virtual Devices

Revised: February 1993

These include files are needed for building virtual
devices (VxDs). Use them in conjunction with the VxD tools
 (see the VxD Tools abstract). These include files are
not the same as the files supplied in the Microsoft(R)
Windows(TM) version 3.1 Device Driver Kit (DDK); they have
been modified to be compatible with Microsoft Macro
Assembler version 6.0 and higher. If you have the Windows
3.1 DDK, you can use the MASM5.EXE assembler that is
included in the DDK and do not need the "VxD-Lite Mini-
DDK" include files or sample VxDs.

Copy these include files to your hard drive in a
subdirectory of your choice. Before assembling one of the
sample VxDs, set your INCLUDE environment variable to this
directory; for example, with the following batch file
command:

     set INCLUDE=c:\vxd\include;%INCLUDE%

When deciding on a directory location, keep in mind that
some VxD code (including all of the regular Windows 3.1
DDK code) assumes that the INCLUDE directory is adjacent
to the sample code subdirectories, as shown below:

               Parent Directory
                      |
   +------------------+------------------+
   |                  |                  |
Sample1            Sample2            Include
   1.asm              2.asm              vmm.inc
   1.inc              2.inc              v86mmgr.inc
   ...                ...                ...

Note: The make files for the VxD samples in the "VxD-Lite
Mini-DDK" do not assume this directory structure. Instead,
they use the INCLUDE environment variable to locate the
files.

When building a VxD that uses this convention, you must do
one of the following:

>  Structure your directories according to the assumption
described above.

>  Modify the make file by changing the MASM -I option to
point to the directory location you selected for the
include file.

>  Declare a new MS-DOS(R) environment variable such as
VXDINCLUDE to point to the VxD include files, then modify
the make file so the MASM -I option uses the environment
variable as a macro. For example:

     masm -I$(VXDINCLUDE) vxdstub;

>  Set the MS-DOS INCLUDE environment variable to point to
the VxD include files, then remove the MASM -I option and
let MASM find the INCLUDE directory based on the MS-DOS
INCLUDE environment variable.

For more information on using the Windows 3.1 DDK files
included on the Microsoft Developer Network CD, read the
 "VxD-Lite Mini-DDK" technical article. For more
information on virtual device programming, see the
"Virtual Device Adaptation Guide" in the Windows 3.1 DDK
and read the relevant articles in the Microsoft Knowledge
Base, Microsoft Systems Journal, and the Technical
Articles sections of the Microsoft Developer Network CD.

KEYWORDS: PR-CD1; CD3 (revised)
