So that we can access the correct device IDs.
---
The EA launcher uses WMI to query system information to tie licenses to particular machines. It expects that a video controller's PNPDeviceID will be valid (i.e. something under CurrentControlSet\Enum), which it no longer is since we stopped using DXGI in d511872a3d0dce5148d23ce5cbf80c989d484b26 / !7450. That information is available from setupapi, which is presumably faster than DXGI (speed was the motivating factor for !7450 - see the original bug https://bugs.winehq.org/show_bug.cgi?id=38879).
I'm all ears if there's a better way to associate the devices under CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318} with those that setupapi reads from ...\Enum, or if there's a way to get the stuff that's in ...\Class out of setupapi (e.g. the RAM and DAC type).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/9035
--
v3: dmsynth: Pre-attenuate voices by center pan attenuation.
fluidsynth: Disable IIR filter resonance hump compensation.
dmsynth: Handle GUID_DMUS_PROP_Volume.
dmsynth: Set gain to 6 dB.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8986
This MR introduces a few minor changes to widl to support generating proxy code for WinRT's parameterized interfaces:
* Use the mangled, C-friendly interface name for naming variables `FormatStringOffsetTable`, `StubThunkTable`, etc) in proxy and stub code.
* Use the default interface of a runtime class while creating type format strings in `write_ip_tfs`.
* When proxy generation is enabled, also compute UUIDs for all specialized parameterized interface declarations in imported files.
Finally, I have also enabled proxy generation and registration for wintypes.dll as an example. We use the `PROXY_CLSID_IS` define as WinRT IDLs cannot use `coclass` to declare the `PSFactoryBuffer` class for the DLL.
--
v5: wintypes: Register proxies for interfaces.
include: Add size and length annotations for IVector(View) and IIterator method params.
include: Remove duplicate interface declarations.
widl: While generating proxies, compute UUIDs for specialized interface declarations in imported IDL files.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8910
--
v4: mmdevapi/tests: Test after stopping, resetting and restarting the client with read_packets().
mmdevapi/tests: Test after stopping and restarting the client with read_packets().
mmdevapi/tests: Test after overrunning buffer with read_packets().
https://gitlab.winehq.org/wine/wine/-/merge_requests/9030
--
v3: mmdevapi/tests: Test after stopping, resetting and restarting the client with read_packets().
mmdevapi/tests: Test after stopping and restarting the client with read_packets().
mmdevapi/tests: Test after overrunning buffer with read_packets().
mmdevapi/tests: Move checking the current padding out of read_packets().
https://gitlab.winehq.org/wine/wine/-/merge_requests/9030