Hardware Info and Monitoring API's for Project Reunion #5462
Replies: 19 comments
-
You can already get all information about any hardware using the APIs in Windows.Devices.Enumeration namespace. You can get the information about the GPU, CPU, Network adapters, speakers, and more. Here's an example of how you might get the CPU name: |
Beta Was this translation helpful? Give feedback.
-
Device Enumeration does show only basic info, doesn't include information that i have provided above Current Winrt system information api's limited these information only |
Beta Was this translation helpful? Give feedback.
-
Since we’re talking about adding APIs for getting hardware specs, I would like to see an easier way for an app to obtain the SMBIOS motherboard UUID. I use this particular piece of information to implement per-machine licensing and activation. Currently, the only (easy) way I can get this value is to run |
Beta Was this translation helpful? Give feedback.
-
@wjk - for licensing and device identification, check out HardwareToken and SystemIdentification. I think we'd want to think carefully about the privacy implications of adding these APIs to Project Reunion (cc @ptorr-msft ) |
Beta Was this translation helpful? Give feedback.
-
FWIW I would not recommend |
Beta Was this translation helpful? Give feedback.
-
That's true, Privacy implications should be considered as well but the current limitations with windows runtime Api's is major drawback as well. I hope once many of the system components taken out of the kernel with project Reunion. These kind of Api's won't be much of privacy concern. |
Beta Was this translation helpful? Give feedback.
-
FYI the privacy concern isn't tied to being in the kernel or not; it's about limiting the tracking data apps can have about users. But the current APIs don't meet all requirements, so we welcome your feedback to make them better. |
Beta Was this translation helpful? Give feedback.
-
@AathifMahir can you help us by pointing to the Win32 / COM / WMI / etc. APIs that you would like to have WinRT equivalents for? |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
@ptorr-msft Anything else needed for this request? |
Beta Was this translation helpful? Give feedback.
-
No thanks, that's great information. I'm not sure where this will land in the roadmap though; for now you should stick to a "Win32"-style app for deep hardware diagnostics and information. |
Beta Was this translation helpful? Give feedback.
-
Any sensitive device details, could be put behind a permissions dialog for UWP apps |
Beta Was this translation helpful? Give feedback.
-
@stevewri this issue still in need of triage. please take a look |
Beta Was this translation helpful? Give feedback.
-
@ptorr-msft if the OS is too much bent on not giving devs the access to these APIs , then why on earth UWP apps provide permissions dialog? what's the rationale behind it? UWP preaches Users first then Devs, so it should be in reality too. let the User decide with his consent that what apps can track or gather information about his/her machine. UWP app's too much restrictions like this are not really acceptable for advanced users. |
Beta Was this translation helpful? Give feedback.
-
@ecovio1 UWP is not that restrictive. I do think LocalHost should be allowed via brokering but there's no need for extra hardware info. You can already gather a lot of information about the hardware in UWP but apps should not rely on it extensively. UWP is about making Windows much better and more secure. Please don't make UWP as bad as Win32 but provide more functionality in a different way. Not all app needs full access to everything. |
Beta Was this translation helpful? Give feedback.
-
For hardware info UWP developers can use EasClientDeviceInformation class, DeviceInformation class, GetSystemInfo (C++ function), Windows.System.Profile.SystemManufacturers namespace, Windows.System.Profile namespace. For GPU information you could use DirectX. Other additional monitoring and gathering info can be done with Win32 and no need for UWP. |
Beta Was this translation helpful? Give feedback.
-
okay go ask some developers if it really is or not. for example their answer will be something like this HandBrake/HandBrake#818 (comment) also not to mention a lot of general use cases UWP proposals are here.
this is an issue of privacy . I don't get how get it down to "Security" concern. this is the winRT way of providing functionalities through permissions. there is a reason why developers stick to win32 . win32 provides more general use cases functionalities where UWP is not. also I don't get how an OS platform becomes "more better" by removing functionalities. no wonder why windows RT was rejected by people. |
Beta Was this translation helpful? Give feedback.
-
@ecovio1 Reason why Handbreak fails is they use older ways and APIs and needs to adopt modern ones. Also, you no longer need to enable developer mode to sideload Appx/MSIX package. Just double click and install. I do agree UWP has some limitations but do you research on alternatives before you propose something. Many limitations can be easily overcome. |
Beta Was this translation helpful? Give feedback.
-
Loopback is something that can't be done so please continue proposing features which you want and let Microsoft decide whether to add it or not but for this proposal, there are alternatives already like using those APIs that I mentioned before. None of those provide CPU name but you could use CPUID for that. There's no WinRT API for GPU info, but DirectX provides it all and already available for UWP. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Currently, we are limited with very less number of information on hardware on UWP api's that win32 had for decades.
List of things should be added sooner than later into a family of UWP APIs:
For Eg:
With current UWP APi's we can't even find the cpu information except number of logical cores and processor architecture
Proposal: [windows.system.processor / windows.system.gpu]
Summary
Hardware Info and Monitoring Api's for Project Reunion
Rationale
Scope
Important Notes
Open Questions
Beta Was this translation helpful? Give feedback.
All reactions