The code returns for CPU above:
Family 15, Model 15, Stepping 0
When I check using WMIC (wmic cpu get caption), I get:
Family 15 Model 31 Stepping 0
The CPU model is different. I have found an another article to get CPU info here: http://www.codeguru.com/cpp/w-p/syst...icle.php/c9087
This tool has three different methods to get CPU info and my results are:
Registry: Family: 15 Model: 31 Stepping: 0
SDK: Family: 15 Model: 31 Stepping: 0
Assembly: Family 15, Model 15, Stepping 0
As you can see that results of Registry and SDK methods are same but Assembly method is returning incorrect model.
It seems when value of model or family is 15, then you have to check for extended model & extended family also. After adding few extra lines at code posted here: http://www.cplusplus.com/forum/lounge/16725/
Re: How to get correct family, model and stepping of CPU
Perhaps the Windows API returns a somewhat "adjusted" model identifier, maybe to circumvent problems with (whatever) certain software? In this case I'd suppose the identifier obtained via the assembly method to be the correct one, at least when it comes to the real hardware.
Ah, and... Welcome to CodeGuru!
Last edited by Eri523; June 22nd, 2011 at 02:31 PM.
I was thrown out of college for cheating on the metaphysics exam; I looked into the soul of the boy sitting next to me.
This is a snakeskin jacket! And for me it's a symbol of my individuality, and my belief... in personal freedom.
Re: How to get correct family, model and stepping of CPU
Maybe it would be interesting to see what model number is returned by a freeware named Speccy, see http://www.piriform.com/speccy
It was developped by the team who wrote ccleaner.
Bookmarks