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 相关文章推荐
Some tips of wmi scripting in jscript (1)
Apr 03 Javascript
JavaScript省市联动实现代码
Feb 15 Javascript
JavaScript代码判断点击第几个按钮
Dec 13 Javascript
javascript动态获取登录时间和在线时长
Feb 25 Javascript
jQuery hover事件简单实现同时绑定2个方法
Jun 07 Javascript
Angular ui.bootstrap.pagination分页
Jan 20 Javascript
angular和BootStrap3实现购物车功能
Jan 25 Javascript
jQuery Ajax前后端使用JSON进行交互示例
Mar 17 Javascript
对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍
Aug 30 Javascript
详解如何使用node.js的开发框架express创建一个web应用
Dec 20 Javascript
微信小程序云开发使用方法新手初体验
May 16 Javascript
在vue中利用v-html按分号将文本换行的例子
Nov 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
异世界新番又来了,同样是从零开始,男主的年龄降到5岁
2020/04/09 日漫
thinkphp区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
php类常量用法实例分析
2015/07/09 PHP
详细解读php的命名空间(二)
2018/02/21 PHP
php生成短网址/短链接原理和用法实例分析
2020/05/29 PHP
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
jQuery 源码分析笔记(3) Deferred机制
2011/06/19 Javascript
用javascript读取xml文件读取节点数据
2014/08/12 Javascript
JS使用eval解析JSON的注意事项分析
2015/11/14 Javascript
微信小程序 loading(加载中提示框)实例
2016/10/28 Javascript
jQuery实现的浮动层div浏览器居中显示效果
2017/02/03 Javascript
React中的refs的使用教程
2018/02/13 Javascript
vue js秒转天数小时分钟秒的实例代码
2018/08/08 Javascript
浅谈vue 单文件探索
2018/09/05 Javascript
windows实现npm和cnpm安装步骤
2019/10/24 Javascript
vue vantUI tab切换时 list组件不触发load事件的问题及解决方法
2020/02/14 Javascript
vue-autoui自匹配webapi的UI控件的实现
2020/03/20 Javascript
基于vue和bootstrap实现简单留言板功能
2020/05/30 Javascript
[01:02:07]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
在Python中使用Neo4j数据库的教程
2015/04/16 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
python-itchat 获取微信群用户信息的实例
2019/02/21 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
中国专业的音频分享平台:喜马拉雅
2019/05/24 全球购物
SQL Server面试题
2013/04/04 面试题
机电一体化专业应届本科生求职信
2013/09/27 职场文书
大学生学习生活的自我评价
2013/11/01 职场文书
主题酒店策划书
2014/01/28 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
珍惜资源保护环境的建议书
2014/05/14 职场文书
优秀应届毕业生自荐书
2014/06/29 职场文书
学校查摆问题整改措施
2014/09/28 职场文书
2014年大学班级工作总结
2014/11/14 职场文书
2015年度女工工作总结
2015/10/22 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python
基于Python实现股票收益率分析
2022/04/02 Python