Access to motherboard information without using WMI

I need to get motheroard identification (serial number, production, etc.) in my application on several processes. I was able to successfully request this using WMI, but I am looking for an alternative.

If you want to know the situation:

I have an application behavior that differs depending on the hardware configuration, or if a specific environment variable is set (for testing purposes).

bool IsVideoCardDisplay = ( getenv("Z_VI_DISPLAY") || !QueryWmiForSpecialBoard() ) ? false : true;

When the environment variable is set, a WMI request is not required - the application is working fine. However, when there is no environment variable, some of the components of my application do not start when it is necessary to execute WMI requests. I suspect there may be some side effects of WMI calls (which only happens once for processes. That's why I'm looking for an alternative way.

+3
source share
3 answers

There seems to be no way to do this, which is unfortunate.

+1
source

Vista + GetSystemFirmwareTable API SMBIOS [ ] .

, , S/N:

            Intel Corporation
            DZ77BH-55K
            AAG39018-400
            BQBH206600DT
+2

This information is provided by the CPUID instruction. The following link provides you with a program that uses this instruction to display the results of the instruction.

cpuid GNU program

-2
source

Source: https://habr.com/ru/post/1714908/


All Articles