Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Compatibility warning re USB drivers

3 views
Skip to first unread message

Walter Oney

unread,
Oct 18, 2002, 3:14:27 PM10/18/02
to
If you are building USB drivers that must run on Win98SE, be sure to
save a copy of a compatible USBD.LIB before it disappears from the
official DDK. The copy in the 98 DDK's lib\i386\free directory will
work, as will the copy in the lib\i386\free directory of the XP DDK.

The problem the older versions of USBD.LIB solve is this. A mistake was
made in the Win98 version of USBD.LIB, such that three functions
(USBD_CreateConfigurationRequestEx,
USBD_ParseConfigurationDescriptorsEx, and USBD_ParseDescriptors) were
exported from USBD.SYS under the __stdcall decorated names instead of
the undecorated names. Versions of USBD.SYS from ME through XP export
these functions under *both* names. The version of USBD.LIB in the 98
and 2K DDKs uses the decorated names. The XP and later versions of
USBD.LIB, except for the special copy mentioned above, use only the
*undecorated* names. Thus, a driver built with the regular USBD.LIB in
the XP DDK will not run on Windows 98/Me because of the mismatch between
import and export names. A driver built with the older USBD.LIB will run
on all current platforms.

--
Walter Oney, Consulting and Training
Basic and Advanced Driver Programming Seminars
Now teaming with John Hyde for USB Device Engineering Seminars
Check out our schedule at http://www.oneysoft.com

0 new messages