欢迎来到天天文库
浏览记录
ID:11200909
大小:54.50 KB
页数:9页
时间:2018-07-10
《c#程序获得cpu,硬盘的序列号》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、使用c#获得cpu,硬盘的序列号(源码)出处:http://www.csdn.net//首先在项目中选中右键“引用”→“添加引用”→打开一个界面,切换到.NET选项卡,添//加System.Management“确定”即可。如下图:usingSystem;usingSystem.Runtime.InteropServices;using System.Management;namespaceHardware{ /// ///Hardware_Mac的摘要说明。 ///
2、> publicclassHardwareInfo { //取机器名 publicstringGetHostName() { returnSystem.Net.Dns.GetHostName(); } //取CPU编号 publicStringGetCpuID() { try { ManagementClassmc=newManagementClass("Win32_Processor"); ManagementObjectCollectionmoc=mc.GetInstances();
3、 StringstrCpuID=null; foreach(ManagementObjectmoinmoc) { strCpuID=mo.Properties["ProcessorId"].Value.ToString(); break; } returnstrCpuID; } catch { return""; } }//endmethod //取第一块硬盘编号 publicStringGetHardDiskID() { try { Man
4、agementObjectSearchersearcher=newManagementObjectSearcher("SELECT*FROMWin32_PhysicalMedia"); StringstrHardDiskID=null; foreach(ManagementObjectmoinsearcher.Get()) { strHardDiskID=mo["SerialNumber"].ToString().Trim(); break; }
5、returnstrHardDiskID; } catch { return""; } }//end publicenumNCBCONST { NCBNAMSZ =16, /*absolutelengthofanetname */ MAX_LANA =254, /*lana'sinrange0toMAX_LANAinclusive */ NCBENUM =0x37, /*NCBENUMERATELANANUMBERS
6、 */ NRC_GOODRET =0x00, /*goodreturn */ NCBRESET =0x32, /*NCBRESET */ NCBASTAT =0x33, /*NCBADAPTERSTATUS */ NUM_NAMEBUF=30, /*NumberofNAME'sBUFFER */ }
7、 [StructLayout(LayoutKind.Sequential)] publicstructADAPTER_STATUS { [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)] publicbyte[]adapter_address; publicbyte rev_major; publicbyte reserved0; publicbyte adapter_type; publicbyte rev_minor;
8、publicushort duration; publicushort frmr_recv; publicushort frmr_xmit; publicushort iframe_recv_err; publicushort xmit_aborts; publicuint xmit_success; publicuint recv_success; publicushort ifra
此文档下载收益归作者所有