Zebediah Figura
9ccf51e3c1
setupapi: Only delete unregistered device interfaces when deleting a device.
...
Fixes a regression introduced by 86d26dded5
.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 09:08:46 +02:00
Zebediah Figura
3fa12ba3a5
setupapi: Implement DIGCF_PRESENT.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 16:53:42 +02:00
Zebediah Figura
f48e726e51
setupapi: Implement SPINT_LINKED.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 16:53:40 +02:00
Zebediah Figura
9b767ad6bb
setupapi: Correctly implement SetupDiDeleteDeviceInterfaceRegKey().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:11:01 +02:00
Zebediah Figura
1d17352ce2
setupapi: Correctly implement SetupDiCreateDeviceInterfaceRegKey().
...
This family of functions manipulates the "Device Parameters" subkey, not its
parent.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:58 +02:00
Zebediah Figura
86d26dded5
setupapi: Merge the InterfaceInfo and InterfaceInstances structs.
...
It seems the original motivation for separating these was to facilitate easy
enumeration of specific classes using SetupDiEnumDeviceInterfaces(), but it
makes other things unnecessarily complex [including an eventual
implementation of SetupDiRemoveDeviceInterface()] and the implementation
provided here seems quite simple enough.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:55 +02:00
Zebediah Figura
ad9e1883ef
setupapi: Add helper functions to get the path of the device instance keys.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:52 +02:00
Zebediah Figura
11d09c299e
setupapi: Don't use SP_DEVINFO_DATA in internal structs.
...
And especially don't use a pointer to one, since there's no guarantee it'll
remain stable.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:49 +02:00
Zebediah Figura
5d7b123d09
setupapi: Merge the DeviceInstance and DeviceInfo structs.
...
These are two different representations of the same underlying object;
there's no reason to keep them separate.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:46 +02:00
Zebediah Figura
b5b09649e6
setupapi: Add an internal helper for SetupDiSetDeviceRegistryProperty().
...
This essentially follows the model used in MSI. The next patch makes use of
this helper.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:43 +02:00
Zebediah Figura
f840bcc6f7
setupapi: Use a handle table to allocate device nodes.
...
The size of DEVINST is DWORD, so using the pointer directly won't work on
64-bit.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:38 +02:00
Zebediah Figura
a3cedc1f3a
setupapi: Remove a pointless cast.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 13:10:35 +02:00
Gijs Vermeulen
87acb93586
setupapi/tests: Add SetupInstallFromInfSectionA test.
...
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 10:49:07 +02:00
Austin English
d45e6814d6
setupapi: Set LastError on success in SetupInstallFromInfSectionW.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45167
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 10:49:07 +02:00
Michael Stefaniuc
94d8ba78b8
setupapi/tests: Use the available ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-15 12:56:48 +02:00
Tim Wanders
074345edd6
setupapi: Return CR_NO_SUCH_DEVNODE from CM_Get_Parent stub.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 20:47:11 +02:00
Alex Henrie
02acc6514a
setupapi/tests: Drop install test workarounds for Windows <= 2000.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-16 19:19:44 +01:00
Alexandre Julliard
35719665d7
setupapi: Use correct architecture for fake dlls on ARM and ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-01 23:16:07 +01:00
Hugh McMaster
c9308b8d6b
setupapi: Recursively remove any subkeys before calling NtDeleteKey().
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 10:24:47 +02:00
Andrew Wesie
e4645d60d7
setupapi: Fix SetupDiGetDeviceRegistryProperty if property does not exist.
...
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 11:18:36 +02:00
Austin English
852cd999f3
setupapi: Add SetupDiEnumDriverInfoA/W stubs.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-17 18:53:30 +01:00
André Hentschel
a0ec931a1b
setupapi: Fix some more spec file entries.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-23 13:15:44 +01:00
Nikolay Sivov
01080e6750
setupapi: Use sizeof() instead of numerical constants for buffer sizes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-08 16:00:49 +01:00
Andrey Gusev
1ce4029994
setupapi: Add CM_Get_Sibling_Ex stub.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 13:07:35 +01:00
Andrey Gusev
afa920a73f
setupapi: Add CM_Get_Child_Ex stub.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 13:06:33 +01:00
André Hentschel
122aea9405
setupapi: Fix some spec file entries.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-27 16:31:43 +01:00
Christoph Brill
6b05583005
setupapi: Stub CM_Open_DevNode_Key and CM_Get_Child.
...
Signed-off-by: Christoph Brill <egore911@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 17:15:27 +01:00
Hans Leidekker
53b7a36319
setupapi/tests: Skip InstallHinfSection tests if the user doesn't have admin rights.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-20 13:02:36 +01:00
Hans Leidekker
0e3a0e13ef
setupapi/tests: Skip SetupGetInfInformation tests if the user doesn't have admin rights.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-20 13:02:34 +01:00
Hans Leidekker
162a40e145
setupapi/tests: Skip devinst tests if the user doesn't have admin rights.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-19 12:13:59 +01:00
Hans Leidekker
0922deda93
setupapi/tests: Skip SetupCopyOEMInfA tests if the user doesn't have admin rights.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-19 12:13:54 +01:00
Hans Leidekker
c84080fb59
setupapi/tests: Clean up properly after each device test.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-07 11:57:46 +01:00
Hans Leidekker
cdb72f3997
setupapi: Add a stub implementation of SetupDiRemoveDeviceInterface.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-07 11:57:44 +01:00
Alistair Leslie-Hughes
b32a0eaab9
setupapi: Add SetupDiGetDevicePropertyW stub.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-08 19:27:02 +01:00
André Hentschel
55efd7cfe4
setupapi/tests: Try to delete pre-existing key.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-13 12:52:15 +09:00
André Hentschel
cfcffd9799
setupapi/tests: Also check for ERROR_CALL_NOT_IMPLEMENTED at the second call to SetupDiCreateDeviceInfoListExW.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 22:19:40 +09:00
Nikolay Sivov
af533d1eeb
setupapi: Added CM_Get_Version().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:11:12 +09:00
Andrey Gusev
3e8d4e3103
setupapi/tests: Fix a typo in comment.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:50:00 +09:00
Rob Walker
10058e7c4e
setupapi: Add stub for setupapi.dll.CM_Get_DevNode_Status.
...
Signed-off-by: Rob Walker <bob.mt.wya@gmail.com>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:26:07 +09:00
Andrey Gusev
bf9d01edd6
setupapi: Fix a typo in comment.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 12:26:08 +09:00
Austin English
f820c09428
setupapi: Add SetupDiSetDeviceInstallParamsW stub.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-31 22:10:54 +09:00
Sebastian Lackner
e8aa851fe4
setupapi: Fix parsing of inf files containing garbage at the beginning of the file.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 21:59:42 +09:00
Frédéric Delanoy
5c2cff30aa
setupapi/tests: Use todo_wine_if() in tests.
...
Signed-off-by: Frédéric Delanoy <frederic.delanoy@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-22 17:37:10 +09:00
Austin English
9ad0bc6372
setupapi: Add SetupDiSelectBestCompatDrv stubs.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 12:05:08 +01:00
André Hentschel
9edfb14c6b
setupapi: Remove dead code (Clang).
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 12:00:11 +01:00
Vincent Povirk
295346f81d
setupapi: Add a manifest to indicate the tests don't need elevation.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 17:14:31 +09:00
Huw Davies
45c987d962
setupapi/tests: Use RegQueryValueEx so that tests run on Win XP.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 01:08:52 +09:00
Vincent Povirk
f0009e17e4
setupapi/tests: Add tests for dirid values.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
2015-10-01 16:28:49 +09:00
Dmitry Timoshkov
ab92627e19
setupapi: SetupDiCreateDeviceInfoListEx returns INVALID_HANDLE_VALUE on error.
2015-07-29 21:44:04 +02:00
Dmitry Timoshkov
afa912b4f2
setupapi: SetupDiGetClassDevsEx returns INVALID_HANDLE_VALUE on error.
2015-07-29 21:44:04 +02:00