取得当前应用程序的windows域名和使用者

本文介绍如何使用C#通过WMI(Windows Management Instrumentation)来获取计算机的各种硬件和软件信息,包括主板信息、BIOS信息、物理磁盘信息、网卡配置信息、CPU信息以及逻辑磁盘信息等。

需要

using System.Diagnostics;
using System.Management;


Process currentProcess = Process.GetCurrentProcess();

string text1 = null;

SelectQuery query1 = new SelectQuery("Select * from Win32_Process WHERE processID=" + currentProcess.Id);
ManagementObjectSearcher searcher1 = new ManagementObjectSearcher(query1);


try
{
foreach (ManagementObject disk in searcher1.Get())
{
ManagementBaseObject inPar = null;
ManagementBaseObject outPar = null;


inPar = disk.GetMethodParameters("GetOwner");


outPar = disk.InvokeMethod("GetOwner", inPar, null);


text1 = outPar["Domain"].ToString() + ":" + outPar["User"].ToString();
break;
}
}
catch
{
text1 = "SYSTEM";
}


return text1;


同样可以取得其他系统信息

//主板信息:
publicstaticvoidGetBaseBoardInfo()
{
try
{
ManagementObjectSearchersearcher=
newManagementObjectSearcher("Select*FromWin32_BaseBoard");
foreach(ManagementObjectmoinsearcher.Get())
{
//mo["Manufacturer"],制造商,如“On-data”(昂达)
//mo["Product"],型号,如“KT400A-8235”
//mo["SerialNumber"],序列号
}
}
catch
{
}
}


//BIOS信息:
publicstaticvoidGetBiosInfo()
{
try
{
ManagementObjectSearchersearcher=
newManagementObjectSearcher("Select*FromWin32_BIOS");
foreach(ManagementObjectmoinsearcher.Get())
{
//mo["Manufacturer"],制造商,如“PhoenixTechnologies,LTD”
//mo["SerialNumber"],序列号
}
}
catch
{
}
}


//物理磁盘信息:
publicstaticvoidGetPhysicalDiskInfo()
{
try
{
ManagementObjectSearchersearcher=
newManagementObjectSearcher("Select*FromWin32_DiskDrive");
foreach(ManagementObjectmoinsearcher.Get())
{
//mo["MediaType"],类型,如“Fixedharddiskmedia”
//mo["SizeBytes"],容量,如“80023749120”(字节)
}
}
catch
{
}
}


//网卡配置信息:
publicstaticvoidGetNAConfigurationInfo()
{
try
{
ManagementObjectSearchersearcher=
newManagementObjectSearcher("Select*FromWin32_NetworkAdapterConfiguration");
foreach(ManagementObjectmoinsearcher.Get())
{
//mo["IPAddress"],IP地址
//mo["DefaultIPGateway"],默认网关
//mo["DNSServerSearchOrder"],DNS地址,如果有备用则会以数组形式返回
//mo["IPSubnet"],子网掩码
//mo["MACAddress"],MAC地址
}
}
catch
{
}
}


//CPU信息:
publicstaticvoidGetProcessorInfo()
{
try
{
ManagementObjectSearchersearcher=
newManagementObjectSearcher("Select*FromWin32_Processor");
foreach(ManagementObjectmoinsearcher.Get())
{
//mo["L2CacheSize"],二级缓存,如“512”
//mo["Manufacturer"],制造商,如“AuthenticAMD”
//mo["MaxClockSpeed"],主频,如“1824”(1.824G)
//mo["ProcessorId"],ID,如“0383F9FF000006A0”
}
}
catch
{
}
}


//逻辑磁盘信息:
publicstaticvoidGetLogicalDiskInfo()
{
try
{
ManagementObjectSearchersearcher=
newManagementObjectSearcher("Select*FromWin32_LogicalDisk");
foreach(ManagementObjectmoinsearcher.Get())
{
//mo["FileSystem"],文件系统,如“FAT32”
//mo["FreeSpace"],剩余空间,如“4554891264”(4G多)
//mo["Name"],卷标,如“C:”
//mo["Size"],大小,如“10476945408”(10G)
}
}
catch
{
}
}


参考http://msdn.microsoft.com/en-us/library/aa392727(v=VS.85).aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值