通过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 // 已安装的网络协议
一些例子:
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery UI Example Page</title>
<script>
function button1_onclick() {//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>");
}
function Button2_onclick() {//CD-ROM 信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_CDROMDrive");
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.Description + "</td>");
document.write("<td>" + p.Drive + "</td>");
document.write("<td>" + p.Status + "</td>");
document.write("<td>" + p.MediaLoaded + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button3_onclick() {//键盘信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_Keyboard");
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.Description + "</td>");
document.write("<td>" + p.Name + "</td>");
document.write("<td>" + p.Status + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button4_onclick() {//主板信息
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT * FROM Win32_BaseBoard");
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.HostingBoard + "</td>");
document.write("<td>" + p.Manufacturer + "</td>");
document.write("<td>" + p.PoweredOn + "</td>");
document.write("<td>" + p.Product + "</td>");
document.write("<td>" + p.SerialNumber + "</td>");
document.write("<td>" + p.Version + "</td>");
document.write("</tr>");
}
document.write("</table>");
}
function Button5_onclick() {//取得打印名
var locator = new ActiveXObject ("WbemScripting.SWbemLocator");
var service = locator.ConnectServer(".");
var properties = service.ExecQuery("SELECT name FROM Win32_Printer");
var e = new Enumerator (properties);
var printerNames = document.getElementById("printerName");
for (; !e.atEnd(); e.moveNext ())
{
var p = e.item ();
var op = document.createElement("OPTION");
printerNames.options.add(op);
op.innerText = p.name;
op.value = p.name;
}
}
</script>
</HEAD>
<body>
<input type="button" name='but1' id="but1" value="PRINT" onClick="Button5_onclick()"><p>
<select name="printerName" id="printerName" style="width:auto" >
<option value="">-Select Printer-</option>
</select>
</body>
</HTML>
分享到:
相关推荐
通过上述知识点,本文详细介绍了如何通过JavaScript实现基于手机定位获取当前位置的细节,适用于开发移动网页或者应用。代码示例有助于理解整个流程的实现,并且可以直接应用于实际开发中,以增强用户体验。
这种方法利用太平洋电脑网提供的IP查询功能,可以通过调用接口来获取客户端的IP地址及相关信息。 **接口调用**: ```html http://whois.pconline.com.cn/?ip=0.0.0.0 ``` 将`0.0.0.0`替换为客户机的真实IP地址即可...
例如,`navigator.userAgent`属性虽然可以提供一些信息,但解析起来可能比较复杂,因为它返回的是一个包含浏览器、操作系统、设备等信息的字符串。`mobile-detect.js`库则通过预定义的规则和模式匹配,将这些信息...
本文实例讲述了JavaScript获取当前cpu使用率的方法。分享给大家供大家参考,具体如下: 想获取当前系统cpu的使用率,如果允许使用hta,可以使用以下的代码获取当前cpu的使用率(较为精确) setInterval(function() { ...
总的来说,利用JavaScript开发股票程序可以让用户在浏览器中轻松获取和分析股票数据,实现动态更新和实时交互,极大地提升了股票投资的便捷性和效率。通过结合HTML和CSS,我们可以创建一个功能完备、用户体验良好的...
本文将详细介绍如何利用test-electron-vue框架来获取电脑的MAC地址。 首先,test-electron-vue是一个基于Vue.js和Electron的项目模板,它简化了创建Electron应用的过程。Vue.js是一个流行的前端框架,用于构建用户...
通过以上步骤,我们可以成功地利用高德地图JavaScript API来获取和展示当地的天气和空气质量信息,为用户提供实用的生活指南。这个项目不仅锻炼了JavaScript编程技能,也加深了对地图API和Web开发实践的理解。
虽然JavaScript本身没有提供直接获取本地IP地址的方法,但可以通过一些间接的方式来实现这一目标。下面将详细介绍如何通过JavaScript来获取主机IP。 首先,我们需要理解IP地址的分类。IP地址分为IPv4和IPv6两种,...
JavaScript实现的简单人机五子棋游戏是一种基于Web的互动娱乐程序,主要利用HTML、CSS和JavaScript技术构建。在这个游戏中,玩家可以与计算机AI进行对弈,体验五子棋的乐趣。下面将详细介绍JavaScript在实现五子棋...
JavaScript是一种广泛应用于网页和互联网应用开发的脚本语言,它主要负责处理网页的动态效果和交互功能。在网站实例中,JavaScript与CSS(层叠样式表)和HTML(超文本标记语言)一起工作,构建出丰富的用户体验。CSS...
os模块提供了一些方法来获取当前服务器的网络接口信息。使用***workInterfaces()方法可以得到一个包含服务器所有网络接口的对象,其中包含了网络接口的详细信息,如IP地址、网络掩码、MAC地址等。 对于获取IP地址的...
- **用户信息**:ActiveXObject("WScript.Network").UserName可获取当前登录用户的用户名。 需要注意的是,这些方法只适用于IE浏览器,并且用户必须开启ActiveX支持,这在现代网络环境中存在很大的安全隐患。因此...
在本项目中,开发者利用QT的Widget模块创建了一个包含地图功能的界面。 2. **C++编程**:作为QT的主要开发语言,C++用于编写应用程序的逻辑代码。QT框架提供了许多C++类和接口,使得开发者能够方便地创建和管理UI...
3. **网络信息**:可以获取网络接口列表、IP地址、MAC地址、带宽利用率、网络连接状态等。这些数据有助于网络性能分析和故障排查。 4. **进程信息**:可以列出当前系统上的所有进程,包括进程ID、用户、CPU和内存...
开发者可以创建一个`Date`实例,用以获取当前日期,或者设置特定的日期。例如,`new Date()`返回当前日期和时间,而`getDate()`, `getMonth()`, `getFullYear()`等方法则用于获取日期的各个部分。 5. **循环与条件...
在这个“JavaScript经典实例”中,我们将探讨两个关键的JavaScript应用场景:创建弹出式窗口和创建折叠式导航菜单,以及如何利用JavaScript探测浏览器插件。 1. 创建弹出式窗口: 在网页开发中,弹出式窗口常用于...
这个万年历是利用JavaScript的事件处理、DOM操作和数据处理等功能实现的。 2. **DOM操作**: 在JavaScript中,Document Object Model (DOM) 是HTML和XML文档的结构化表示。编写万年历需要对DOM进行操作,例如创建...
这样,无论用户使用手机、平板还是电脑,都能看到适合当前设备的界面布局。 此外,"wap"通常指的是无线应用协议,这表明该模板可能特别优化了对移动网络的支持,以便在2G、3G或4G网络环境下也能流畅运行。 总的来...
根据提供的文件内容,本篇知识详解将围绕如何利用JavaScript(JS)在IE浏览器环境下获取本地电脑的信息展开讨论。这个过程涉及到浏览器兼容性、ActiveX对象的使用以及Windows系统注册表的读取等知识点。下面将详细...
例如,在C#中,可以利用Windows API函数GetCursorPos来获取鼠标位置,它会返回一个Point结构体,包含当前鼠标的屏幕坐标。代码示例如下: ```csharp [DllImport("user32.dll")] public static extern bool ...