Board logo

标题: [其他] [已解决]如何将“选中后的文本”添加鼠标右键用bat打开? [打印本页]

作者: sxw    时间: 2010-10-15 17:55     标题: [已解决]如何将“选中后的文本”添加鼠标右键用bat打开?

每次运行代码都要新建bat,复制,粘贴,很麻烦,可以将网页中的批处理代码选中后,然后单击右键,出现“用bat打开”吗?{此问题已结}

[ 本帖最后由 sxw 于 2010-10-19 21:55 编辑 ]
作者: vsbat    时间: 2010-10-15 18:49

新建一个文件 是在所难免的吧
txt文件保存的时候直接保存 为 .bat 后缀名就可以了--

不是太麻烦吧
作者: cjiabing    时间: 2010-10-15 20:47

还不是说“右键菜单”?
作者: hfg1977    时间: 2010-10-15 23:15

看他的意思是想说 用 CMD运行TXT文件;
语法分析好半天,我晕了...
作者: sxw    时间: 2010-10-15 23:38

就是先选中一段批处理文本,再单击右键,会出现“用bat打开”这一项,可以直接运行的那种。
作者: bluewing009    时间: 2010-10-16 08:27     标题: 回复 5楼 的帖子

这个右键菜单与你当前使用的文本工具有关系,仅在系统内修改注册表等等估计不行。
作者: yangfengoo    时间: 2010-10-16 10:26     标题: 回复 5楼 的帖子

太强大了 bat文件右键应用bat把它打开,
你蛋痛不?
作者: bluewing009    时间: 2010-10-16 11:04     标题: 回复 7楼 的帖子

LZ的意思是随便一个代码比如用IE查看的,在记事本里的,甚至是word 里的  然后选中 出来一个“bat打开”的右键
就像IE的“迅雷下载”一样////////
作者: sxw    时间: 2010-10-16 15:16

就在“网页”里选中一段文本吧,能实现吗?
作者: broly    时间: 2010-10-16 15:59

在右键-新建  的地方多了批处理
  1. reg add "HKLM\SOFTWARE\Classes\.bat\ShellNew" /v "NullFile" /t REG_SZ /d "" /f
  2. reg add "HKLM\SOFTWARE\Classes\batfile" /v "EditFlags" /t REG_BINARY /d "30040000" /f
复制代码

作者: sxw    时间: 2010-10-16 17:26

右键新建bat的有了,还是得复制,粘贴,运行;还不是很方便啊。最好一步就解决了:选中文本后直接单击右键就运行了!?
作者: Batcher    时间: 2010-10-16 18:54     标题: 回复 9楼 的帖子

能把所有需求都更新到顶楼吗?
作者: wc726842270    时间: 2010-10-16 21:37

自已看吧,不过是站外的东西
http://wenku.baidu.com/view/e81150d8d15abe23482f4d94.html
作者: Batcher    时间: 2010-10-16 23:20

将网页中的文字右键保存
http://cn-dos.net/forum/viewthread.php?tid=32984
作者: sxw    时间: 2010-10-17 17:30

这样离目标还差一步啊,经过修改,可以直接右键保存存为bat文件了。
作者: Batcher    时间: 2010-10-19 00:08

RunTextAsBAT.htm
  1. <html>
  2. <head>
  3.   <meta http-equiv="content-type" content="text/html; charset=gb2312">
  4.   <title>添加到 IE 右键菜单</title>
  5.   <script type="text/javascript">
  6.     var oShell = new ActiveXObject("WScript.Shell");
  7.     var regBase = "HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\MenuExt\\";
  8.     function addReg() {
  9.       var regTitle, regValue, s1 = stext.value, s2 = salt.value;
  10.       s1 = s1 == "" ? "作为BAT运行" : s1;
  11.       s2 = s2 == "" ? "" : "(&" + s2.substring(0,1).toUpperCase() + ")";
  12.       regTitle = s1 + s2;
  13.       regValue = decodeURI(document.location.href);
  14.       try{
  15.         oShell.RegWrite(regBase + regTitle + "\\", regValue, "REG_SZ");
  16.         oShell.RegWrite(regBase + regTitle + "\\contexts", 52, "REG_DWORD");
  17.         alert("添加成功!");
  18.       } catch(e) {
  19.         alert("添加失败!");
  20.       }
  21.     }
  22.     function delReg() {
  23.       var s1 = sdel.value;
  24.       if (s1.length > 0) {
  25.         s1 = s1.replace(/^(.+)\((\w)\)$/, "$1(&$2)");
  26.         try{
  27.           oShell.RegDelete(regBase + s1 + "\\contexts");
  28.           oShell.RegDelete(regBase + s1 + "\\");
  29.           alert("删除成功!");
  30.         } catch(e) {
  31.           alert("删除失败!");
  32.         }
  33.       }
  34.     }
  35.     function goon(){
  36.       document.getElementById("tips").style.display = "none";
  37.       document.getElementById("doing").style.display = "";
  38.     }
  39.     function mainFunction(s){
  40.       var fso = new ActiveXObject("Scripting.FileSystemObject");
  41.       //var fn  = oShell.ExpandEnvironmentStrings("%temp%") + "\\" + "$htmltxt.bat"
  42.       var fn  = oShell.SpecialFolders("Desktop") + "\\" + "$htmltxt.bat"
  43.       with(fso.CreateTextFile(fn, true)){
  44.         Write(s);
  45.         Close();
  46.       }
  47.       var cmd = "cmd /c "
  48.         + "@pushd \"" + oShell.SpecialFolders("Desktop") + "\""
  49.         + "&@echo pushd \"%cd%\"&@echo ========= BAT 开始执行 ========="
  50.         + "&call \"" + fn + "\""
  51.         + "&@echo ========= BAT 执行完毕 =========&@pause>nul";
  52.       oShell.Run(cmd);
  53.     }
  54.     if(external.menuArguments) {
  55.         var pDoc = external.menuArguments.document;
  56.         var sSelected = pDoc.selection.createRange().text;
  57.         mainFunction(sSelected);
  58.     }
  59.   </script>
  60. </head>
  61. <body onload="goon()">
  62.   <div id="tips" name="tips" style="font:24px/2em Consolas;color:red;">
  63.     ☭<i> === 要想正常使用必须允许脚本和 ActiveX 控件 === </i>❂
  64.   </div>
  65.   <div id="doing" name="doing" style="display:none;text-align:center;font:18px/1.2em 华文楷体,Consolas;">
  66.     <p>
  67.       <b>将选中的文本作为BAT运行</b>
  68.       <table>
  69.         <tr><td>右键中显示名称</td><td><input type="text" id="stext" name=="stext"/></td></tr>
  70.         <tr><td>热键(限一个字母)</td><td><input type="text" id="salt" name=="salt"/></td></tr>
  71.       </table>
  72.       <input type="button" value=" 添 加 " onclick="addReg()" />
  73.     </p>
  74.     <p>&nbsp;</p>
  75.     <p>
  76.       <b>从IE右键删除一个菜单</b>
  77.       显示的名称 <input type="text" id="sdel" name="sdel"/>
  78.       <input type="button" value=" 删 除 " onclick="delReg()" />
  79.     </p>
  80.   </div>
  81. </body>
  82. </html>
复制代码

作者: sxw    时间: 2010-10-19 21:53

是的就是这个了!谢谢!!!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2