Release 5.0-rc4.
[wine.git] / include / newdev.h
blob94b8a940de59e64857bb2f3bbe2d041c94a3ef18
1 /*
2 * New Device installation API
4 * Copyright 2019 Zebediah Figura
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #ifndef _INC_NEWDEV
22 #define _INC_NEWDEV
24 #include "setupapi.h"
26 #define INSTALLFLAG_FORCE 0x1
27 #define INSTALLFLAG_READONLY 0x2
28 #define INSTALLFLAG_NONINTERACTIVE 0x4
29 #define INSTALLFLAG_BITS 0x7
31 BOOL WINAPI UpdateDriverForPlugAndPlayDevicesA(HWND parent, const char *hardware_id, const char *inf_path, DWORD flags, BOOL *reboot);
32 BOOL WINAPI UpdateDriverForPlugAndPlayDevicesW(HWND parent, const WCHAR *hardware_id, const WCHAR *inf_path, DWORD flags, BOOL *reboot);
33 #define UpdateDriverForPlugAndPlayDevices WINELIB_NAME_AW(UpdateDriverForPlugAndPlayDevices)
35 #define DIIRFLAG_INF_ALREADY_COPIED 0x01
36 #define DIIRFLAG_FORCE_INF 0x02
37 #define DIIRFLAG_HW_USING_THE_INF 0x04
38 #define DIIRFLAG_HOTPATCH 0x08
39 #define DIIRFLAG_NOBACKUP 0x10
40 #define DIIRFLAG_PRE_CONFIGURE_INF 0x20
41 #define DIIRFLAG_INSTALL_AS_SET 0x40
42 #define DIIRFLAG_BITS (DIIRFLAG_FORCE_INF | DIIRFLAG_HOTPATCH | DIIRFLAG_PRE_CONFIGURE_INF | DIIRFLAG_INSTALL_AS_SET)
43 #define DIIRFLAG_SYSTEM_BITS (DIIRFLAG_INF_ALREADY_COPIED | DIIRFLAG_FORCE_INF | DIIRFLAG_HW_USING_THE_INF \
44 | DIIRFLAG_HOTPATCH | DIIRFLAG_NOBACKUP | DIIRFLAG_PRE_CONFIGURE_INF | DIIRFLAG_INSTALL_AS_SET)
46 BOOL WINAPI DiInstallDriverA(HWND parent, const char *inf_path, DWORD flags, BOOL *reboot);
47 BOOL WINAPI DiInstallDriverW(HWND parent, const WCHAR *inf_path, DWORD flags, BOOL *reboot);
48 #define DiInstallDriver WINELIB_NAME_AW(DiInstallDriver)
50 #endif