Click here to Skip to main content
15,887,135 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I tried to get the CPU Bus Speed and Multiplier(ratio) and found out that I could not via C#.

So I am wondering if anyone knows how to get these with C++ without using Win32_ type libraries.
Posted
Updated 19-Jun-11 15:39pm
v2

Getting information about the hardware installed on a system (and its operational parameters) is a function controlled by the drivers and operating system. C++, or any programming language, does not have calls to directly interface to hardware installed. Everything is processed via the OS's calls that allow you access to the information (i.e. the APIs).

Here's an image of what I'm referring to:
http://upload.wikimedia.org/wikipedia/commons/e/e1/Operating_system_placement.svg[^]
 
Share this answer
 
Comments
thexcodec 19-Jun-11 22:27pm    
ok that makes sense, but then how does programs like CPU-z get this information then? They sell a program SDK that you can use, but that SDK must be built by a programming language.
Albert Holguin 20-Jun-11 0:04am    
it simply accesses the appropriate APIs... I wouldn't buy an SDK for this...
thexcodec 20-Jun-11 0:09am    
what are the appropriate API calls then. I have searched google and MSDN for hours and hours and found no such answers. the Win32_ type API calls don' do it.
Albert Holguin 20-Jun-11 19:22pm    
http://msdn.microsoft.com/en-us/library/aa394373%28VS.85%29.aspx
I am not agree with the above solution as it says no to your question. I worked at OS level. the thing you require can be done using the concept Device Driver Programming in windows, using which you can even do firmware level programming.. :)
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900