使用JavaScript获取硬件参数信息
原理是利用ActiveX对象访问Windowsmanagement Instrumentation (WMI) ,所以代码目前也只能在以IE为内核的浏览器中正常运行,如果要运行在其他内核的浏览器中,那么可通过PPAPI、NPAPI等相关技术实现。
一、ActiveX + WMI方式
以下是获取cpu的部分属性,Win32_Processor就是cpu的标识
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_Processor");
var e = new Enumerator (properties);
document.write("<table border=1>");
for (;!e.atEnd();e.moveNext ())
{var p = e.item ();document.write("<tr>");document.write("<td>" + p.Caption + "</td>");document.write("<td>" + p.DeviceID + "</td>");document.write("<td>" + p.Name + "</td>");document.write("<td>" + p.CpuStatus + "</td>");document.write("<td>" + p.Availability + "</td>");document.write("<td>" + p.Level + "</td>");document.write("<td>" + p.ProcessorID + "</td>");document.write("<td>" + p.SystemName + "</td>");document.write("<td>" + p.ProcessorType + "</td>");document.write("</tr>");
}
document.write("</table>");
硬件标识及属性
部分标识列举如下:
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 // MODEMWin32_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 // 已安装的网络协议
完整的硬件标识和硬件具有的属性值可参见MSDN
中文版:Win32_DiskDrive 类 - Win32 apps | Microsoft Docs
英文版:Win32_Processor class - Win32 apps | Microsoft Docs
繁体版:Win32_DiskDrive 類別 - Win32 apps | Microsoft Docs
WMI资料:Windows Management Instrumentation - Win32 apps | Microsoft DocsWindows Management Instrumentation - Win32 apps | Microsoft Docs
二、NPAPI
三、PPAPI
使用JavaScript获取硬件参数信息相关推荐
- Javascript获取页面、屏幕尺寸大小参数
Javascript获取获取屏幕.浏览器窗口 ,浏览器,网页高度.宽度的大小 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clien ...
- 如何读取电脑html信息,JavaScript 获取客户端计算机硬件及系统信息
JavaScript 获取客户端计算机硬件及系统信息 //系统信息获取 function getSysInfo() { var locator =new ActiveXObject ("Wb ...
- JavaScript获取时间戳与时间戳转化
Javascript 获取当前时间戳(毫秒级别): 第一种方法: var timestamp1 = Date.parse( new Date()); 结果:1470220594000 第二种方法: v ...
- javascript获取网页URL地址及参数等
2019独角兽企业重金招聘Python工程师标准>>> 用javascript获取url网址信息 Java代码 <script type="text/javascri ...
- JavaScript获取当前根目录
JavaScript获取当前根目录 主要用到Location 对象,包含有关当前 URL 的信息,是 Window 对象的一个部分,可通过 window.location 属性来访问.方法一 (win ...
- [轉]JavaScript获取HTML DOM父,子,临近节点
在Web应用程序特别是Web2.0程序开发中,经常要获取页面中某个元素,然后更新该元素的样式.内容等.如何获取要更新的元素,是首先要解决的问题.令人欣慰的是,使用JavaScript获取节点的方法有很 ...
- Javascript 获取浏览器窗口中文档(视口)可用尺寸的方法
摘要: 由于浏览器的差异,许多信息的获取都要考虑兼容性,窗口中文档可用尺寸是一个经常需要用到的信息,由于浏览器不同甚至版本不同,获取的方法也不一样,本文介绍的函数能够兼容各种浏览器,获取这一信息.同时 ...
- Atitit.获取主板与bios序列号获取硬件设备信息 Wmi wmic 的作用
Atitit.获取主板与bios序列号获取硬件设备信息 Wmi wmic 的作用 1 获取硬件核心基础核心基础Wmi1 2 其他资料2 3 Wmic WMI 命令行接口2 4 Atitit.获取主板 ...
- html+设置img+src属性值,javascript获取、设置修改img的src属性(get/setAttribute)
在开发网站过程中,事先就设置好了图片img的src性,一般来说很少修改这个属性,网站加载时直接显示事先设置好的图片.但如果网页要求实现滚屏加载图片(动态加载图片),也就是一次不显示网页内的所有图片,当 ...
最新文章
- (iOS)sqlcipher和FMDB的使用总结(原创)
- Myeclipse 10 使用之修改字体
- C#编码规范(3):常用变量和控件在变量命名中缩写
- CentOS 5.9 yum安装LAMP(Apache+MySQL+PHP)
- HTML用户点击新建按钮,html – 需要点击按钮
- )类 新建javafx程序时_关于JavaFX杂谈
- c语言string最大长度,求3个字符串中最长单词的长度 求救 会一个的
- 个人项目总结----By Li Zhang
- python连接hive kerberos_数据库开发实战教程:使用Python连接Kerberos的Presto
- 十六进制数相加校验和计算程序
- H264--语法及结构--2
- 双线macd指标参数最佳设置_手机mt4平台怎么使用macd双线指标
- Simulink电力系统仿真-三相短路
- 一文彻底搞懂BP算法:原理推导+数据演示+项目实战(上篇)
- PSCC2019常用基础操作
- libcef-框架架构中概念介绍-进程-线程-引用计数-字符串等(一)
- maven项目中 org.hibernate.MappingNotFoundException: resource:**.hbm.xml not found问题的解决方案
- 机房动环监控系统厂家品牌
- 原创超简单代码(1.20)
- 市场调研—全球及中国活化部分凝血活酶时间测试(APTT测试)行业研究及十四五规划分析报告