When queried by NtQueryInformationToken(TokenElevation).
---
As the test shows, a TokenElevation query is more complex than a check against the elevation type.
GOG Galaxy's updater relies on this behavior when its service is launched with a TokenElevationTypeDefault token (which doesn't currently happen, but I have patches in the works for that).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7972
The basic `FindAllAsync()` method returns a collection of `DeviceInformation` objects representing all device interfaces on the system. This MR adds a basic implementation of this method, and the associated `IDeviceInformation` and `DeviceInformationCollection` objects it returns. For `IDeviceInformation`, this MR only implements the `Id()` method, which returns the symbolic link for the registered interface.
A basic working `DeviceInformation` and `FindAll` implementations are needed to implement `DeviceWatcher`'s `Added`, `Removed` events, which in turn is required for basic device discovery in `Windows.Devices.Bluetooth`.
--
v5: windows.devices.enumeration: Create IDeviceInformation objects from all present device interfaces.
windows.devices.enumeration: Add a stubbed IDeviceInformation implementation for device interfaces.
windows.devices.enumeration: Add a stubbed implementation for FindAllAsync() and DeviceInformationCollection.
windows.devices.enumeration/tests: Add conformance tests for FindAllAsync().
https://gitlab.winehq.org/wine/wine/-/merge_requests/6874
The basic `FindAllAsync()` method returns a collection of `DeviceInformation` objects representing all device interfaces on the system. This MR adds a basic implementation of this method, and the associated `IDeviceInformation` and `DeviceInformationCollection` objects it returns. For `IDeviceInformation`, this MR only implements the `Id()` method, which returns the symbolic link for the registered interface.
--
v4: windows.devices.enumeration: Implement IIterable<IDeviceInformation *> for DeviceInformationCollection.
windows.devices.enumeration: Implement IndexOf() and GetMany() for DeviceInformationCollection.
windows.devices.enumeration: Create IDeviceInformation objects from all present device interfaces.
windows.devices.enumeration: Add a stubbed IDeviceInformation implementation for device interfaces.
windows.devices.enumeration: Add a stubbed implementation for FindAllAsync() and DeviceInformationCollection.
windows.devices.enumeration/tests: Add conformance tests for IIterable and IIterator interfaces in DeviceInformationCollection.
windows.devices.enumeration/tests: Add conformance tests for GetMany() and IndexOf() methods in DeviceInformationCollection.
windows.devices.enumeration/tests: Add conformance tests for FindAllAsync().
https://gitlab.winehq.org/wine/wine/-/merge_requests/6874
This fixes Trials Fusion often crashing when disconnecting a controller while there are more still connected.
--
v4: hidclass: Set Status for pending IRPs of removed devices to STATUS_DEVICE_NOT_CONNECTED.
ntdll/tests: Add more NtCancelIoFile[Ex]() tests.
ntdll: Wait for all pending operations to be cancelled in NtCancelIoFile[Ex]().
https://gitlab.winehq.org/wine/wine/-/merge_requests/7797