日期:2014-05-18 浏览次数:20914 次
//===========================声明API======================================== [DllImport("kernel32")] public static extern void GetWindowsDirectory(StringBuilder WinDir, int count); [DllImport("kernel32")] public static extern void GetSystemDirectory(StringBuilder SysDir, int count); [DllImport("kernel32")] public static extern void GetSystemInfo(ref CPU_INFO cpuinfo); [DllImport("kernel32")] public static extern void GlobalMemoryStatus(ref MEMORY_INFO meminfo); [DllImport("kernel32")] public static extern void GetSystemTime(ref SYSTEMTIME_INFO stinfo); //============================================================================ //================定义CPU的信息结构=========================================== [StructLayout(LayoutKind.Sequential)] public struct CPU_INFO { public uint dwOemId;//CPU的OEM public uint dwPageSize;//CPU的页面大小 public uint lpMinimumApplicationAddress; public uint lpMaximumApplicationAddress; public uint dwActiveProcessorMask; public uint dwNumberOfProcessors;//CPU的个数 public uint dwProcessorType;//CPU的类型 public uint dwAllocationGranularity; public uint dwProcessorLevel;//CPU的等级 public uint dwProcessorRevision; } //定义内存的信息结构 [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;//剩余虚拟内存 } //定义系统时间的信息结构 [StructLayout(LayoutKind.Sequential)] public struct SYSTEMTIME_INFO { public ushort wYear;//年 public ushort wMonth;//月 public ushort wDayOfWeek; public ushort wDay;//日 public ushort wHour;//时 public ushort wMinute;//分 public ushort wSecond;//秒 public ushort wMilliseconds; } //========================================================================================= string ProcessName=[color=#FF0000]进行名称[/color]; Process[] MyProcess=Process.GetProcessesByName(ProcessName); this.label26.Text="进程镜像名:"+MyProcess[0].ProcessName; this.label27.Text="进程ID;"+MyProcess[0].Id; this.label29.Text="启动线程数:"+MyProcess[0].Threads.Count.ToString(); this.label28.Text="CPU占用时间:"+MyProcess[0].TotalProcessorTime.ToString(); this.label30.Text="线程优先级:"+MyProcess[0].PriorityClass.ToString(); this.label31.Text="启动时间:"+MyProcess[0].StartTime.ToLongTimeString(); this.label32.Text="专用内存:"+(MyProcess[0].PrivateMemorySize/1024).ToString()+"K"; this.label33.Text="峰顶虚拟内存:"+(MyProcess[0].PeakVirtualMemorySize/1024).ToString()+"K"; this.label35.Text="峰顶分页内存:"+(MyProcess[0].PeakPagedMemorySize/1024).ToString()+"K"; this.label34.Text="分页系统内存:"+(MyProcess[0].PagedSystemMemorySize/1024).ToString()+"K"; this.label36.Text="分页内存:"+(MyProcess[0].PagedMemorySize/1024).ToString()+"K"; this.label37.Text="未分页系统内存:"