分享

使用Javascript修改客户端注册表

 浮石 2009-12-31
以下代码是在右右键菜单中加入一个“欢迎访问自由者!”的选项 然后点这一项后就打开页面“http://”

<script language="VBScript">
Dim hkey_root,hkey_path,hkey_key
hkey_root = "HKEY_CURRENT_USER"
hkey_path = "\Software\Microsoft\Internet Explorer\MenuExt"

RegWsh = CreateObject("WScript.Shell")
hkey_key="\欢迎访问自由者!"
RegWsh.RegWrite hkey_root+hkey_path+hkey_key,"http://127.0.0.1/"
</script>

可以通过javascript生成ActivexObject来修改客户端的注册表,不过只在ie下有效

以下是一个通过javascript修改注册表禁用windows任务管理器的例子,供大家参考

一般情况下,要禁用windows的任务管理器,可通过一下方式实现:

方法:开始 ------> 运行 ------> regedit(输入) -----> HKEY_CURRENT_USER\software\Microsoft\windows\currentversion\policies\system (哈哈.比较麻烦,我检查过了,没有写错的,如果没有system项,就选中policies点右键选择新建项,命名为system) -----> 新建一个名为 DisableTaskMgr 的DWORD 值,其中,这个值为 1.然后关闭注册表,您就会发现任务管理器已经被禁用了。

现在我们要通过javascript来实现这件事情,我写了个html页面,在这个页面里来做测试:

 

 

Html代码 复制代码
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  2. <HTML>  
  3.  <HEAD>  
  4.   <TITLE> New Document </TITLE>  
  5.   <META NAME="Generator" CONTENT="EditPlus">  
  6.   <META NAME="Author" CONTENT="">  
  7.   <META NAME="Keywords" CONTENT="">  
  8.   <META NAME="Description" CONTENT="">  
  9.   <script type="text/javascript">  
  10.     function disableTaskMgr(flg){   
  11.         //判断浏览器环境   
  12.          if(!(window.attachEvent && navigator.userAgent.indexOf('Opera') === -1)){   
  13.             alert('禁用注册表的操作只在IE下有效!');   
  14.             return false;   
  15.          }   
  16.          try{   
  17.             //新建一个WScript.Shell对象   
  18.             var shell = new ActiveXObject("WScript.Shell");       
  19.             if(flg){   
  20.             //往注册表中写入值   
  21.             shell.RegWrite("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\   
  22.                                      CurrentVersion\\Policies\\system\\DisableTaskMgr",1,"REG_DWORD");   
  23.             }else{   
  24.             //往注册表中写入值   
  25.               shell.RegWrite("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\   
  26.                                      CurrentVersion\\Policies\\system\\DisableTaskMgr",0,"REG_DWORD");   
  27.             //或者删除DisableTaskMgr键也可   
  28.             //删除注册表项   
  29.             //shell.RegDelete("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\   
  30.                                      CurrentVersion\\Policies\\system\\DisableTaskMgr");   
  31.             }   
  32.          }catch(e){   
  33.             throw e;   
  34.          }          
  35.     }   
  36.   </script>  
  37.  </HEAD>  
  38.   
  39.  <BODY>  
  40.   <button onclick="disableTaskMgr(true)">禁用任务管理器</button>  
  41.   <button onclick="disableTaskMgr(false)">启用任务管理器</button>  
  42.  </BODY>  
  43. </HTML>  
 

 

可以把以上的代码保存在本地运行试试效果,可以做到禁用和解禁任务管理器。

 

以下是js操作注册表的采用方式,修改注册表其他地方可以仿照上面的形式

 

 

Js代码 复制代码
  1. var shell = new ActiveXObject("WScript.Shell");        
  2.   
  3.   
  4. //读注册表 值   
  5. var  key1  = shell.RegRead("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows   
  6. \\CurrentVersion\\Run\\eip");   
  7.                    
  8. //删除注册表项   
  9. shell.RegDelete("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows   
  10. \\CurrentVersion\\Run\\eip");   
  11.                     
  12. //往注册表中写入值   
  13.   shell.RegWrite   
  14. ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows   
  15. \\CurrentVersion\\Run\\eip", "C:\\eip\\eip.lnk","REG_SZ");       
  16.   
  17.          
  18.  shell.RegWrite("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows   
  19. \\CurrentVersion\\Run\\eip","c:\\eip\\eip.lnk","REG_SZ");  
 

可通过用最后的反斜线终止 来指定项名。指定值名时最后不要包括反斜线。


类型 说明 形式
REG_SZ 字符串 字符串
REG_DWORD 数字 整数
REG_BINARY 二进制值 整数
REG_EXPAND_SZ 可扩展的字符串(例如,"%windir%\\calc.exe") 字符串

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多