/*
C# Programming Tips & Techniques
by Charles Wright, Kris Jamsa
Publisher: Osborne/McGraw-Hill (December 28, 2001)
ISBN: 0072193794
*/
namespace nsRegKey
{
using System;
using Microsoft.Win32;
public class RegKeyclsMain
{
static public void Main ()
{
int x;
string RegID =
"HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\";
for (x = 0; x < 4; ++x)
{
string ValueID = RegID + x;
RegistryKey key = Registry.LocalMachine;
Object cpuType;
object cpuSpeed;
key = key.OpenSubKey(ValueID);
if (key == null)
break;
cpuType = key.GetValue("VendorIdentifier");
cpuSpeed = key.GetValue("~MHz");
Console.WriteLine ("Processor {0} is {1} {2}",
x,
cpuSpeed == null ? "speed unknown"
: cpuSpeed.ToString() + " MHz",
cpuType == null ? "type unknown"
: cpuType.ToString());
key.Close ();
}
Console.WriteLine ("\r\nThis computer has {0} {1}",
x, x == 1 ? "processor" : "processors");
}
}
}