获取windows系统信息
在应用程序中,有时需要在界面中显示计算机的硬件信息和进程信息。在.Net中提供了可以查询信息的类。Management类,在程序中添加应用后进行使用。
1 属性
类似的属性介绍可见下面:
属性介绍
根据以上的属性介绍可以查询常见的信息,比如内存,硬件等等。当然在内存信息中还有分类,在上述属性介绍中也有,同样通过代码也是可以获取。
2 编写流程
a 初始化
ManagementClass SystempMeg = new ManagementClass(syetemType);
其中systtemtype就是上面属性介绍:
Win32_Processor:获取cpu信息。
Win32_OperatingSystem:内存信息。等等可以打开上述链接查询
b 获取信息中属性
在内存信息中需要查询可用内存大小和未使用的,所以需要获取属性名称。
可通过程序进行获取,如下:
ManagementObjectSearcher MySearch = new ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem");
SystempMeg.Options.UseAmendedQualifiers = true;
PropertyDataCollection properties = SystempMeg.Properties;
foreach (PropertyData property in properties)
{
WriteMegLog(
"---------------------------------------");
WriteMegLog(property.Name);
WriteMegLog("Description: " + property.Qualifiers["Description"].Value);
}
//c 获取属性值
//在知道有关属性关键词后,下面就是获取属性值
foreach (ManagementObject c in MySearch.Get())
{
WriteMegLog("Value: ");
WriteMegLog(
c.Properties[property.Name.ToString()].Value.ToString());
}
在通过函数获取Mysearch后,再进行查询。为此结束。
3 代码片
ManagementClass SystempMeg;
public SystemMessage (string syetemType)
{
SystempMeg = new ManagementClass(syetemType);
}
public void GetCpuSystemMeg()
{
if (SystempMeg != null)
{
ManagementObjectSearcher MySearch = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");
foreach (ManagementObject MyObject in MySearch.Get())
{
WriteMegLog("CPU处理器系列类型:");
WriteMegLog(MyObject.Properties["Family"].Value.ToString());
WriteMegLog("该处理器的最大速度(以兆赫为单位):");
WriteMegLog(MyObject.Properties["MaxClockSpeed"].Value.ToString());
WriteMegLog("CPU的当前状态为:");
WriteMegLog(MyObject.Properties["CpuStatus"].Value.ToString());
WriteMegLog("CPU处理器的当前速度(以兆赫为单位):");
WriteMegLog(MyObject.Properties["CurrentClockSpeed"].Value.ToString());
}
MySearch.Dispose();
SystempMeg.Dispose(); }
}
4 注意
在获取属性值,有的属性值无法获取,现在还没找到原因,比如获取当前网速。
获取windows系统信息的更多相关文章
- 几个获取Windows系统信息的Delphi程序
1.获取windows版本信息 可以通过Windows API函数GetVersionEx来获得. 具体程序如下: Procedure Tform1.Button1Click(sender:TObje ...
- Python WMI获取Windows系统信息 监控系统
#!/usr/bin/env python # -*- coding: utf-8 -*- #http://www.cnblogs.com/liu-ke/ import wmi import os i ...
- Python WMI获取Windows系统信息
#!/usr/bin/env python # -*- coding: utf-8 -*- #http://www.cnblogs.com/liu-ke/ import wmi import os i ...
- C#获取WINDOWS系统信息
需引用System.Management命名空间, 具体代码如下: public class SysProp { public SysProp() { ManagementObjectSearcher ...
- python使用wmi模块获取windows下的系统信息监控系统-乾颐堂
Python用WMI模块获取Windows系统的硬件信息:硬盘分区.使用情况,内存大小,CPU型号,当前运行的进程,自启动程序及位置,系统的版本等信息. 本文实例讲述了python使用wmi模块获取w ...
- 获取windows 操作系统下的硬件或操作系统信息等
奇怪的工作,制作的是一款办公应用软件,领导却要求我统计用户计算机的物理信息,什么CPU的型号.核心数,什么内存信息等各种乱七八糟的用户信息.我想问,现在用户的信息就这么没有隐私性了么?想获取就获取传递 ...
- 使用C#获取Windows Phone手机的各种数据(转)
转自:http://www.sum16.com/desinger/use-c-sharp-get-windows-phone-information.html 使用C#获取Windows Phone手 ...
- PHP】获取客户端(浏览器)信息、获取客户端系统信息、获取服务器信息
* 获取客户端浏览器信息 * @param null * @author https://blog.jjonline.cn/phptech/168.html * @return string */ f ...
- 通过PowerShell获取Windows系统密码Hash
当你拿到了系统控制权之后如何才能更长的时间内控制已经拿到这台机器呢?作为白帽子,已经在对手防线上撕开一个口子,如果你需要进一步扩大战果,你首先需要做的就是潜伏下来,收集更多的信息便于你判断,便于有更大 ...
随机推荐
- C 语言 printf格式控制详解
闲来无事,整理了一下C语言printf() 的格式控制语句. PS:详细来源于网络. printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说 ...
- BitMap(比特位)
所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省. 腾讯面试的时候,让写了一个BitMap ...
- php 之 json格式
/*JSON语法数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组 JSON 数据的书写格式是:名称/值对名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值;如"myw ...
- 【随记】数据库还原失败System.Data.SqlClient.SqlError: 无法执行 BACKUP LOG,因为当前没有数据库备份
解决方法:去掉下图中箭头所指的项.
- gocode 安装
1.安装git,将git/bin添加至PATH 2.执行go get -u github.com/nsf/gocode 3.在%GOPATH%/bin/下会生成gocode.exe
- max os 安装python模块PIL
下载libjpeg和zlib: http://www.ijg.org/files/jpegsrc.v9.tar.gz http://zlib.net/zlib-1.2.8.tar.gz 安装libjp ...
- UFLDL教程(五)之self-taught learning
这里所谓的自学习,其实就是利用稀疏自编码器对无标签样本学习其特征 该自学习程序包括两部分: 稀疏自编码器学习图像特征(实现自学习)---用到无标签的样本集 softmax回归对样本分类---用到有标签 ...
- iOSシステム構成の纏め
iOSのアーキテクチャ a) iOSのアーキテクチャは階層化されている最上位レベルでは.iOSはそれが稼働しているハードウェアとアプリケーションの間の仲介役を果たします.アプリケーションが ...
- HDUOJ Clear All of Them I 状压DP
Clear All of Them I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 122768/62768 K (Java/Oth ...
- [操作系统]iOS6与iOS7屏幕适配技巧
一.没有包装任何 导航控制器 或者 UITabBarController 1.控制器的view是UIScrollView\UITableView\UICollectionView时(控制器是UITab ...