[PATCH v2 2/8] wineplugplay.sys: Initialize device driver store

Aric Stewart aric at codeweavers.com
Mon Aug 22 09:19:43 CDT 2016


v2: Suggestions by Sebastian Lackner
    Move loading the driver to a dynamic method

We are not handling installing drivers just yet, so we just make use of the
critical device store. These are drivers that, on Windows, are automatically
loaded on boot every time.  This database is maintained in
[CurrentControlSet/Control/CriticalDeviceDatabase] The keys in this registry key
represent a HardwareID that match a device. We query the IDs from the bus
device’s BusQueryHardwareIDs and if we find a match (from most specific to most
general) we look at that registry key. The CriticalDeviceDatabase entry
specify a [Service] value representing the driver.

Signed-off-by: Aric Stewart <aric at codeweavers.com>
---
 dlls/wineplugplay.sys/Makefile.in   |   5 +-
 dlls/wineplugplay.sys/main.c        |   3 +
 dlls/wineplugplay.sys/pnp.h         |  20 +++++
 dlls/wineplugplay.sys/pnp_manager.c | 162 ++++++++++++++++++++++++++++++++++++
 4 files changed, 188 insertions(+), 2 deletions(-)
 create mode 100644 dlls/wineplugplay.sys/pnp.h
 create mode 100644 dlls/wineplugplay.sys/pnp_manager.c


-------------- next part --------------
A non-text attachment was scrubbed...
Name: v2-0002-wineplugplay.sys-Initialize-device-driver-store.txt
Type: text/x-patch
Size: 7010 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20160822/7b97a92e/attachment-0001.bin>


More information about the wine-patches mailing list