当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript 硬盘序列号+其它硬件信息

Javascript
JS getMonth()日期函数的值域是0-11
jQuery 处理网页内容的实现代码
jQuery 树形结构的选择器
jQuery 处理表单元素的代码
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
JavaScript 10件让人费解的事情
类似GMAIL的Ajax信息反馈显示
两个比较有用的Javascript工具函数代码
JavaScript Timer实现代码
JavaScript 学习技巧
JavaScript 题型问答有答案参考
js删除select中重复项的实现代码
javascript中的链式调用
JavaScript DOM学习第一章 W3C DOM简介
JavaScript DOM 学习第二章 编辑文本
JavaScript DOM 学习第三章 内容表格
JavaScript DOM学习第四章 getElementByTagNames
JavaScript DOM 学习第五章 表单简介
JavaScript DOM学习第六章 表单实例
JavaScript DOM 学习第七章 表单的扩展

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 221 ::
收藏到网摘: n/a

给政府做的,完全要求高,居然用硬盘序列号,MAC地址,CPU地址三项来绑定指定的人来操作。 看了看别的资料有提取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
和在一块总算给提出来了,呵呵。