ID Number: Q84000
3.00 3.10
WINDOWS
Summary:
The DECLARE_VIRTUAL_DEVICE line of every virtual device (VxD) used in
the Microsoft Windows graphical environment contains a VxD identifier
(ID) field. This field contains either the unique number assigned to
that virtual device or the constant Undefined_Device_ID.
While most virtual devices can use the Undefined_Device_ID, certain
virtual devices must a have unique identifier. A VxD that calls an
MS-DOS device or a terminate-and-stay-resident (TSR) program must have
an ID. An ID is also required for a VxD that provides any of the
following:
- A service or services
- A V86-mode application programming interface (API)
- A protected-mode API
Windows does not prevent a VxD that uses the Undefined_Device_ID from
loading more than once in a given Windows session. As Windows loads,
it retrieves a list of all virtual devices to load by sending the
Interrupt 2Fh Function 1605h broadcast and checking the SYSTEM.INI
file. If a VxD is specified more than once and it uses the
Undefined_Device_ID, it is loaded multiple times. However, if the VxD
has its own unique ID, Windows recognizes the situation, informs the
user, and aborts the loading process (unless the VxD contains code to
address this situation and allow Windows to continue).
Microsoft uses the V*D.386 naming convention for the VxDs provided
with Windows where the "*" names the device virtualized by the VxD.
Other VxD vendors should use a different naming convention; preferably
one that incorporates the company name. The resulting name should be
as mnemonic as possible.
To obtain a unique VxD ID, complete the form below and return it to
Microsoft through electronic mail. Send completed forms to:
vxdid@microsoft.com
This address is valid for any electronic mail service with Internet
access, including CompuServe, MCI Mail, and many others.
Some systems require an address prefix to connect to Internet. For
example, electronic mail on the CompuServe system should be addressed
as follows:
>INTERNET:vxdid@microsoft.com
If electronic mail is unavailable, send a facsimile of the form below
to VXDID at (206) 93MS-FAX, or mail the form to the following address:
VXDID
Microsoft Corporation
One Microsoft Way
Redmond, Washington 98052-6399
Note: The method of using OEM numbers documented on page 17-5 of the
"Microsoft Windows Device Development Kit Virtual Device Adaptation
Guide" manual for version 3.0 of the Microsoft Windows Device
Development Kit (DDK) is no longer correct. VxD ID numbers are
assigned on a per-VxD basis. Microsoft will assign a unique number for
each VxD you write; OEM ID numbers, which can be used for up to 32
VxDs, are not assigned.
More Information:
Virtual Device ID Request
=========================
Contact Name(s):
Phone Number(s):
CompuServe ID or Microsoft Support Advantage Account Number(s):
Internet Electronic Mail Address:
Company Name:
Address:
Address:
City/State/Zip:
Country:
Number of VxDs planned:
Provide the following information for each virtual device planned:
VxD Filename: ________.386 Virtual __________ Device
Will this VxD be loaded from TSR? (Yes/No):
Will this VxD call out to an MS-DOS TSR/device driver through the
"Interrupt 2Fh call out" (Interrupt 2Fh, Function 1607h)? (Yes/No):
Estimate the number of
Virtual-8086 (V86) functions exported:
PM functions exported:
VxD Services:
If this VxD replaces a "standard" VxD, which one does it replace:
Summarize the purpose of this VxD:
Summarize the technical attributes of this VxD (interrupts hooked, I/O
ports trapped, and so forth):
In what way or with what products will this VxD be distributed?
Will the functions or services of this VxD be documented for others to
call?
Additional reference words: 3.00 3.10 DDKVXD email e-mail fax