javascript 硬盘序列号+其它硬件信息


Posted in Javascript onDecember 23, 2008

看了看别的资料有提取CPU,MAC的现成代码却没有硬盘序列号,找了好久才找到提取硬盘序列号的参数。于是自己给补上了。
<html>
<head>
<title>提取硬盘序列号</title>
<script>
function disk() {//硬盘序列号 信息

 var locator = new ActiveXObject ("WbemScripting.SWbemLocator");

 var service = locator.ConnectServer(".");

 var properties = service.ExecQuery("SELECT * FROM Win32_DiskDrive");

 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.signature + "</td>");

document.write("</tr>");

 }

 document.write("</table>");
}
</script>
</head>
<body>
<input type="button" value="硬盘序列号" onclick="disk()">
</body>
</html>

在这上找的代码:
对于写过ASP或.net 的人来说,通过asp或.net 语言来获得客户端的硬件信息是很熟悉的.但如何通过javascript这种客户端脚本来获得客户端的信息呢?请看以下实例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

 <head>

<title>javascript获得客户端硬件信息-www.web2bar.cn/</title>

<meta name="GENERATOR" content="Microsoft Visual Studio .NET
7.1">

<meta name="vs_targetSchema"
content="http://schemas.microsoft.com/intellisense/ie5">

 <script id=clientEventHandlersJS language=javascript>
<!--


function Button2_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 Button1_onclick() {//软盘信息

 var locator = new ActiveXObject ("WbemScripting.SWbemLocator");

 var service = locator.ConnectServer(".");

 var properties = service.ExecQuery("SELECT * FROM Win32_FloppyDrive");

 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.DeviceID + "</td>");

document.write("<td>" + p.Status + "</td>");

document.write("<td>" + p.Manufacuturer + "</td>");

document.write("</tr>");

 }

 document.write("</table>");
}


function Button1_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 Button1_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 Button1_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>");
}


//-->
</script>
</head>

 <body>

<INPUT id="Button1" type="button" value="Button"
name="Button1" language=javascript onclick="return Button1_onclick()">

 </body>
</html>
使用javascript方式获得客户端的信息主要的优点是,不需求服务器资源.不需求刷新网页.直接在客户端执行脚本获得显示.

在这上找到了硬盘序列号的参数:
\'获得硬盘序列号
Dim cmicWmi As New System.Management.ManagementObjectSearcher(\"SELECT * FROM Win32_DiskDrive\")
Dim Uint32 As UInt32
For Each cmicWmiObj As ManagementObject In cmicWmi.Get
Uint32 = cmicWmiObj(\"signature\")
Next
TextBox1.Text = Uint32.ToString
和在一块总算给提出来了,呵呵。

Javascript 相关文章推荐
JavaScript 编程引入命名空间的方法
Jun 29 Javascript
XmlUtils JS操作XML工具类
Oct 01 Javascript
jQuery 获取兄弟元素的几种不错方法
May 23 Javascript
基于js与flash实现的网站flv视频播放插件代码
Oct 14 Javascript
js中的json对象详细介绍
Oct 29 Javascript
浅析JavaScript 箭头函数 generator Date JSON
May 23 Javascript
两种JavaScript的AES加密方式(可与Java相互加解密)
Aug 02 Javascript
jQuery Validate 相关参数及常用的自定义验证规则
Mar 06 Javascript
使用Object.defineProperty如何巧妙找到修改某个变量的准确代码位置
Nov 02 Javascript
Vue Extends 扩展选项用法完整实例
Sep 17 Javascript
JS页面获取 session 值,作用域和闭包学习笔记
Oct 16 Javascript
详解JavaScript 高阶函数
Sep 14 Javascript
js 解决“options为空或不是对象”
Dec 22 #Javascript
javascript 动态参数判空操作
Dec 22 #Javascript
Javascript 布尔型分析
Dec 22 #Javascript
通过event对象的fromElement属性解决热区设置主实体的一个bug
Dec 22 #Javascript
javascript StringBuilder类实现
Dec 22 #Javascript
关于IE7 IE8弹出窗口顶上
Dec 22 #Javascript
清除网页历史记录,屏蔽后退按钮!
Dec 22 #Javascript
You might like
pw的一个放后门的方法分析
2007/10/08 PHP
PHP的可变变量名的使用方法分享
2012/02/05 PHP
浅析PHP编程中10个最常见的错误
2014/08/08 PHP
php读取txt文件并将数据插入到数据库
2016/02/23 PHP
PHP封装的分页类与简单用法示例
2019/02/25 PHP
jquery 插件 人性化的消息显示
2008/01/21 Javascript
jquery利用event.which方法获取键盘输入值的代码
2011/10/09 Javascript
Jquery插件之打造自定义的select标签
2011/11/30 Javascript
js弹出窗口之弹出层的小例子
2013/06/17 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
jquery.validate.js插件使用经验记录
2014/07/02 Javascript
详解JavaScript的while循环的使用
2015/06/03 Javascript
轻松实现javascript图片轮播特效
2016/01/13 Javascript
基于jquery实现表格内容筛选功能实例解析
2016/05/09 Javascript
JS检测页面中哪个HTML标签触发点击事件的方法
2016/06/17 Javascript
用jquery快速解决IE输入框不能输入的问题
2016/10/04 Javascript
jQuery访问json文件中数据的方法示例
2019/01/28 jQuery
3分钟读懂移动端rem使用方法(推荐)
2019/05/06 Javascript
微信小程序实现点击按钮后修改颜色
2019/12/05 Javascript
如何解决django配置settings时遇到Could not import settings 'conf.local'
2014/11/18 Python
shelve  用来持久化任意的Python对象实例代码
2016/10/12 Python
python输入错误密码用户锁定实现方法
2017/11/27 Python
Python爬虫中urllib库的进阶学习
2018/01/05 Python
python实现播放音频和录音功能示例代码
2018/12/30 Python
深入浅析Python 命令行模块 Click
2020/03/11 Python
python中rb含义理解
2020/06/18 Python
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
英国运动服、设备及配件网站:DW Sports
2019/12/04 全球购物
新加坡第一大健康与美容零售商:屈臣氏新加坡(Watsons Singapore)
2020/12/11 全球购物
linux面试题参考答案(5)
2014/09/01 面试题
小学生检讨书大全
2014/02/06 职场文书
学习焦裕禄同志为人民服务思想汇报
2014/09/10 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
4S店收银员岗位职责
2015/04/07 职场文书
英语演讲开场白
2015/05/29 职场文书
分布式架构Redis中有哪些数据结构及底层实现原理
2022/03/13 Redis