




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JavaScript 获取客户端计算机硬件及系统信息2009-02-17 来自:lizhe1985收藏到我的网摘高性能网页开发新20条规则详解Yahoo优异性能开发团队2008魁北克会议演讲 架构师能力模型解析你现在还只是一个程序员 中小IT企业如何留住80后技术人才了解80后一代的职场观 你希望真诚的与同水平的高级技术人员交流吗?加入架构师|项目经理|产品经理俱乐部 这是真公司、真职位、实名的高级技术人员SNS来源:/redhatlinux/archive/2009/02/11/254254.html通过WMI来实现获取客户端计算机硬件及系统信息:1/系统信息获取 2function getSysInfo() 3 var locator = new ActiveXObject (WbemScripting.SWbemLocator); 4 var service = locator.ConnectServer(.); 5 /CPU信息 6 var cpu = new Enumerator (service.ExecQuery(SELECT * FROM Win32_Processor).item(); 7 var cpuType=cpu.Name,hostName=cpu.SystemName; 8 /内存信息 9 var memory = new Enumerator (service.ExecQuery(SELECT * FROM Win32_PhysicalMemory); 10 for (var mem=,i=0; !memory.atEnd(); memory.moveNext() memi+=cap:memory.item().Capacity/1024/1024,speed:memory.item().Speed 11 /系统信息 12 var system=new Enumerator (service.ExecQuery(SELECT * FROM Win32_ComputerSystem).item(); 13 var physicMenCap=Math.ceil(system.TotalPhysicalMemory/1024/1024),curUser=system.UserName,cpuCount=system.NumberOfProcessors 14 15 return cpuType:cpuType,cpuCount:cpuCount,hostName:hostName,curUser:curUser,memCap:physicMenCap,mem:mem 16 代码实现主要包括这几部分: 先通过new ActiveXObject (WbemScripting.SWbemLocator); 访问到WbemScripting对象。 通过locator.ConnectServer(.); 连接我们本地电脑(.代表本地电脑,当然 也可以访问其他计算机)。 通过service.ExecQuery(SELECT * FROM Win32_Processor)这个类似sql的语句(其实系统信息也是存储在计算中一个类似数据库的文件中)获取我们需要的对象的记录集。 通过new Enumerator来创建一个可枚举的对象,下面就可以遍历取信息了。 注意:运行的前提是要修改浏览器安全设置,“允许对未标记为可安全执行的ActiveX脚本的运行”。这里主要取了CPU、内存及系统用户几个信息,大家利用WMI的API或者借助JSEDIT获取到更多的信息。下面列出了常用信息的类:Win32_Processor / CPU 处理器Win32_PhysicalMemory / 物理内存Win32_Keyboard / 键盘Win32_PointingDevice / 点输入设备,如鼠标Win32_DiskDrive / 硬盘驱动器Win32_CDROMDrive / 光盘驱动器Win32_BaseBoard / 主板Win32_BIOS / BIOS 芯片Win32_ParallelPort / 并口Win32_SerialPort / 串口Win32_SoundDevice / 多媒体设置Win32_USBController / USB 控制器Win32_NetworkAdapter / 网络适配器Win32_NetworkAdapterConfiguration / 网络适配器设置Win32_Printer / 打印机Win32_PrinterConfiguration / 打印机设置Win32_PrintJob / 打印机任务Win32_TCPIPPrinterPort / 打印机端口Win32_POTSModem / MODEM Win32_POTSModemToSerialPort / MODEM 端口Win32_DesktopMonitor / 显示器Win32_VideoController / 显卡细节。Win32_VideoSettings / 显卡支持的显示模式。Win32_TimeZone / 时区Win32_SystemDriver / 驱动程序Win32_DiskPartition / 磁盘分区Win32_LogicalDisk / 逻辑磁盘Win32_LogicalMemoryConfiguration / 逻辑内存配置Win32_PageFile / 系统页文件信息Win32_PageFileSetting / 页文件设置Win32_BootConfiguration / 系统启动配置Win32_OperatingSystem / 操作系统信息Win32_StartupCommand / 系统自动启动程序Win32_Service / 系统安装的服务Win32_Group / 系统管理组Win32_GroupUser / 系统组帐号Win32_UserAccount / 用户帐号Win32_Process / 系统进程Win32_Thread / 系统线程Win32_Share / 共享Win32_NetworkClient / 已安装的网络客户端Win32_NetworkProtocol / 已安装的网络协议WMI Win32类的完整信息及详细列表请参考MSDN:/en-us/library/aa394084(VS.85).aspx示例:1function button1_onclick() /cpu 信息2 var locator = new ActiveXObject (WbemScripting.SWbemLocator); 3 var service = locator.ConnectServer(.); 4 var properties = service.ExecQuery(SELECT * FROM Win32_Processor); 5 var e = new Enumerator (properties); 6 document.write(table border=1); 7 for (; !e.atEnd(); e.moveNext ()8 9 var p = e.item (); 10 document.write(tr); 11 document.write(td + p.Caption + /td); 12 document.write(td + p.DeviceID + /td); 13 document.write(td + p.Name + /td); 14 document.write(td + p.CpuStatus + /td); 15 document.write(td + p.Availability + /td); 16 document.write(td + p.Level + /td); 17 document.write(td + p.ProcessorID + /td); 18 document.write(td + p.SystemName + /td); 19 document.write(td + p.ProcessorType + /td); 20 document.write(/tr); 21 22 document.write(/table); 232425function Button2_onclick() /CD-ROM 信息26 var locator = new ActiveXObject (WbemScripting.SWbemLocator); 27 var service = locator.ConnectServer(.); 28 var properties = service.ExecQuery(SELECT * FROM Win32_CDROMDrive); 29 var e = new Enumerator (properties); 30 document.write(table border=1); 31 for (; !e.atEnd(); e.moveNext ()32 33 var p = e.item (); 34 document.write(tr); 35 document.write(td + p.Caption + /td); 36 document.write(td + p.Description + /td); 37 document.write(td + p.Drive + /td); 38 document.write(td + p.Status + /td); 39 document.write(td + p.MediaLoaded + /td); 40 document.write(/tr); 41 42 document.write(/table); 434445function Button3_onclick() /键盘信息46 var locator = new ActiveXObject (WbemScripting.SWbemLocator); 47 var service = locator.ConnectServer(.); 48 var properties = service.ExecQuery(SELECT * FROM Win32_Keyboard); 49 var e = new Enumerator (properties); 50 document.write(table border=1); 51 for (; !e.atEnd(); e.moveNext ()52 53 var p = e.item (); 54 document.write(tr); 55 document.write(td + p.Description + /td); 56 document.write(td + p.Name + /td); 57 document.write(td + p.Status + /td); 58 document.write(/tr); 59 60 document.write(/table); 616263function Button4_onclick() /主板信息64 var locator = new ActiveXObject (WbemScripting.SWbemLocator); 65 var service = locator.ConnectServer(.); 66 var properties = service.ExecQuery(SELECT * FROM Win32_BaseBoard); 67 var e = new Enumerator (properties); 68 document.write(table border=1); 69 for (; !e.atEnd(); e.moveNext ()70 71 var p = e.item (); 72 document.write(tr); 73 document.write(td + p.HostingBoard + /td); 74 doc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海员基本安全培训省证课件
- 广告位资源介绍
- 海南省旅行社安全培训课件
- 海关网络安全培训中心课件
- 海信安全培训要点课件
- 动物源性食品产业链整合创新创业项目商业计划书
- 渔业养殖精准养殖创新创业项目商业计划书
- 电商数据分析与决策支持系统创新创业项目商业计划书
- 2026届四川省宜宾市叙州区九年级化学第一学期期中质量跟踪监视试题含解析
- 房屋委托租赁合同15篇
- 急性胃肠炎诊疗规范
- 汉字五千年解说词完整版内容
- 《解密分层教学》读书心得体会(读书心得体会30篇)
- 《锅炉安全技术规程》课件
- 化学检验员职业生涯规划书
- 妇产科课件-子宫内膜息肉临床诊疗路径(2022版)解读
- 厂房建设工程投标方案(技术方案)
- 医院感染管理制度与职责
- 《药棒穴位按摩》课件
- 全国职工数字化应用技术技能大赛理论练习试题附答案(二)
- 中建盘扣式落地卸料平台施工方案
评论
0/150
提交评论