免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1882 | 回复: 0
打印 上一主题 下一主题

js 调用 activeX 获取u盘序列号 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-11-18 17:34 |只看该作者 |倒序浏览
js 调用 activeX 获取u盘序列号




view sourceprint?
function GetDIVORPIV(DIV)
  1.          {  

  2.                   var str;  

  3.                   var arrayDIV=new Array();  

  4.                        

  5.                   if(DIV.indexOf("_")>0)  

  6.                   {  

  7.                       arrayDIV=DIV.split("_");  

  8.                       str=arrayDIV[1];  

  9.                   }  

  10.                   else   

  11.                   {  

  12.                     str="";  

  13.                   }  

  14.                   return str;  

  15.           }  

  16.       

  17.       

  18.           function GetDIVandPIV(DIVPIV)  

  19.           {  

  20.           var strDIVandPIV;  

  21.           var strDIVPIV=DIVPIV;  

  22.                

  23.           var arrayDIVPIV=new Array();  

  24.                

  25.                   if(strDIVPIV.indexOf("&")>0)  

  26.                   {  

  27.                         arrayDIVPIV=strDIVPIV.split("&");  

  28.                         strDIVandPIV=GetDIVORPIV(arrayDIVPIV[0])+GetDIVORPIV(arrayDIVPIV[1]);  

  29.                   }  

  30.                   else

  31.                   {  

  32.                         strDIVandPIV="";  

  33.                   }  

  34.                 return strDIVandPIV;  

  35.                

  36.           }  

  37.             

  38.             

  39.               function GetUsbSN(DIVPIVSN)  

  40.               {  

  41.                       var UsbSN;  

  42.                            

  43.                       var strSN=DIVPIVSN ;  

  44.                       var arraySN=new Array();  

  45.                            

  46.                       if(strSN.indexOf("&")>0)  

  47.                       {  

  48.                             arraySN=strSN.split("\\");  

  49.                            

  50.                           if(arraySN.length>2)  

  51.                           {  

  52.                                 UsbSN=GetDIVandPIV(arraySN[1])+arraySN[2];  

  53.                           }  

  54.                           else

  55.                           {  

  56.                                 UsbSN="";  

  57.                           }  

  58.                       }  

  59.                       else

  60.                       {  

  61.                             UsbSN="";  

  62.                       }  

  63.                       return UsbSN;  

  64.                   

  65.               }  

  66.       

  67.       

  68.               function CheckUsb()  

  69.               {  

  70.                       var e,x;     

  71.                       var ForReading = 1,RorWriting = 2;   

  72.                       var fso = new ActiveXObject("Scripting.FileSystemObject");  

  73.                       var bfResult=false ;   

  74.                            

  75.                       e = new Enumerator(fso.Drives)     

  76.                           for(;!e.atEnd();e.moveNext())     

  77.                           {     

  78.                                 x=e.item();   

  79.                               if(x.DriveType==1)     

  80.                               {     

  81.                                   if(x.Path!="A:")     

  82.                                   {     

  83.                                   bfResult=true ;     

  84.                                   }     

  85.                               }     

  86.                           }  

  87.                       return bfResult;  

  88.               }  

  89.                  

  90.                  

  91.           function ReadUsbSN()   

  92.           {  

  93.               var bfUsb;  

  94.               bfUsb=CheckUsb();  

  95.                   if(bfUsb==true)  

  96.                   {  

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

  98.                       var computer = locator.ConnectServer(".");  

  99.                       var properties = computer.ExecQuery("SELECT * FROM Win32_USBHub");  

  100.                       var e = new Enumerator (properties);  

  101.                            

  102.                       var arrayUsbSN=new Array();//存放序列号  

  103.                       var intCount=0;  

  104.                            

  105.                           for (;!e.atEnd();e.moveNext ())  

  106.                           {  

  107.                               var p = e.item ();  

  108.                               var strSN;  

  109.                               var uSerialNum;  

  110.                               var sn=p.DeviceID  

  111.                                    

  112.                                   if(sn.indexOf("VID")>0)  

  113.                                   {  

  114.                                   strSN=GetUsbSN(sn);  

  115.                                   uSerialNum=strSN.substring(8);  

  116.                                   arrayUsbSN[intCount]=strSN;  

  117.                                   intCount=intCount+1;  

  118.                                   alert("你的U盘系列号为:"+ uSerialNum);  

  119.                                   }     

  120.                           }     

  121.                   }  

  122.                   else

  123.                   {  

  124.                   alert("请插入U盘");  

  125.                   }  

  126.           }
复制代码
fix yourself in right way,fix the world in right codes
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP