//cpu频率
using Microsoft.Win32; private int GetCPUFrequency() { RegistryKey rk = Registry.LocalMachine.OpenSubKey( @" HARDWARE\DESCRIPTION\System\CentralProcessor\0 " ); object obj = rk.GetValue( " ~MHz " ); int CPUFrequency = ( int )obj; return CPUFrequency; }//
//磁盘空间 Management
using System.Management; private long GetFreeDiskSpace() { ManagementObject disk = new ManagementObject( " win32_logicaldisk.deviceid=\ " d:\ "" ); disk.Get(); string totalByte = disk[ " FreeSpace " ].ToString(); long freeDiskSpaceMb = Convert.ToInt64(totalbyte) / 1024 / 1024 ; return freeDiskSpaceMb; }
///内存信息
using System; using System.Text; using System.Runtime.InteropServices; namespace ConsoleApplication1 { /**//// <summary> /// Summary description for Class1. /// </summary> class Class1 { [StructLayout(LayoutKind.Sequential)] public struct MEMORY_INFO { public uint dwLength; public uint dwMemoryLoad; public uint dwTotalPhys; public uint dwAvailPhys; public uint dwTotalPageFile; public uint dwAvailPageFile; public uint dwTotalVirtual; public uint dwAvailVirtual; } [DllImport("kernel32")] public static extern void GlobalMemoryStatus(ref MEMORY_INFO meminfo); public static int Main(string[] args) { Class1 class1 = new Class1(); class1.GetMemoryStatus(); return 0; } private void GetMemoryStatus() { MEMORY_INFO MemInfo; MemInfo = new MEMORY_INFO(); GlobalMemoryStatus(ref MemInfo); long totalMb = Convert.ToInt64( MemInfo.dwTotalPhys.ToString())/1024/1024; long avaliableMb = Convert.ToInt64( MemInfo.dwAvailPhys.ToString())/1024/1024; Console.WriteLine( "物理内存共有" + totalMb + " MB"); Console.WriteLine( "可使用的物理内存有" + avaliableMb +" MB"); } }//
//cpu名字
using Microsoft.Win32; private string GetCPUName() { RegistryKey rk = Registry.LocalMachine.OpenSubKey( @" HARDWARE\DESCRIPTION\System\CentralProcessor\0 " ); object obj = rk.GetValue( " ProcessorNameString " ); string CPUName = ( string )obj; return CPUName.TrimStart(); }
/////OS版本
using System; namespace determineOS_CS { class Class1 { static void Main(string[] args) { // Get OperatingSystem information from the system namespace. System.OperatingSystem osInfo =System.Environment.OSVersion; // Determine the platform. switch(osInfo.Platform) { // Platform is Windows 95, Windows 98, // Windows 98 Second Edition, or Windows Me. case System.PlatformID.Win32Windows: switch (osInfo.Version.Minor) { case 0: Console.WriteLine ("Windows 95"); break; case 10: if(osInfo.Version.Revision.ToString()=="2222A") Console.WriteLine("Windows 98 Second Edition"); else Console.WriteLine("Windows 98"); break; case 90: Console.WriteLine("Windows Me"); break; } break; // Platform is Windows NT 3.51, Windows NT 4.0, Windows 2000, // or Windows XP. case System.PlatformID.Win32NT: switch(osInfo.Version.Major) { case 3: Console.WriteLine("Windows NT 3.51"); break; case 4: Console.WriteLine("Windows NT 4.0"); break; case 5: if (osInfo.Version.Minor==0) Console.WriteLine("Windows 2000"); else Console.WriteLine("Windows XP"); break; }break; } Console.ReadLine (); } }}转载于:https://www.cnblogs.com/xiaozhang/archive/2006/07/19/454638.html