问题描述:
如何使BAT和特定的EXE文件关联,让EXE运行时相应的BAT能运行??
可以吗??
解析:
用文本编辑器编辑那个 bat 文件 ...
在里面加入 exe 的路径和文件名就可以了 ...
请看代码:@ECHO OFF
TITLE 修改关联神器 - 控盘惨原创
COLOR A
:File
SET /P "Pro=请输入需要关联的程序全路径(注意一定是绝对路径):"
IF NOT EXIST "%Pro%" msg * 文件不存在! &cls &goto File
CLS
SET /P "Ext=请输入需要关联的文件扩展名(扩展名请直接输入,比如说你要关联的扩展名是txt,就不要写成.txt或*.txt这样的格式.只要写txt在这里就行了):"
::
reg.exe ADD "HKEY_CLASSES_ROOT\.%Ext%" /VE /D "%Ext%File" /F>NUL
reg.exe ADD "HKEY_CLASSES_ROOT\%Ext%File\Shell\Open\Command" /VE /D "%Pro%" /F>NUL
::
CLS
ECHO 关联成功!系统已保存设置:使用%Pro%打开所有%Ext%格式的文件.
PAUSE>NUL
Win7系统中bat 后缀文件关联程序恢复
转载
xingpacer
最后发布于2017-03-30 11:56:53
阅读数 2912
收藏
展开
本文的方法有效,本人遇到类似的问题,亲测通过!
今天在使用EditPlus打开bat处理文件时,修改文件内容保存后,bat批处理文件都关联上EditPlus,即默认使用EditPlus打开,不再直接运行bat文件了。这样太麻烦了,每次运行bat时都要实现打开一个cmd窗口,然后将bat拖进去,太麻烦了。想修改回来,不再关联EditPlus。但是便不是那么容易,可能是bat文件比较敏感,不像一般的文件类型那么好处理,废了好大的劲才搜索到解决办法,现将经过实测的方法给出来(别人提供的方法)。之前尝试在bat文件右键中选择“打开方式”->“选择默认程序”,找到cmd的路径选中cmd.exe,但是不能勾选“始终使用选择的程序打开这种文件”,所以不能通过该方法奖bat文件关联上cmd.exe。可能是bat文件比较敏感,系统控制的比较严,不允许设置默认打开程序。(虚线下面的就是别人的文章了)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
自己的win7系统下,由于一时不小心,将.bat类型的文件默认关联用UltraEdit程序打开。这样导致每次双击.bat类型的文件,都是自动用UE去打开查看而并不是之前默认的运行(方式类似双击.exe后缀文件)。网上查了一下,发现这个问题的解决方案很少是有效的。综合搜索的结果,下面的方法是自己成功过的:
1. 打开注册表,确认下面的值,如果不是,那么请修改成下面的值:
注:在开始-〉运行里面输入regedit然后回车
[HKEY_CLASSES_ROOT\.bat]
@="batfile"
[HKEY_CLASSES_ROOT\.bat\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"
2. 编辑注册表下面的内容
下面的内容参考这里。
找到下面路径中的.bat:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat
2.1 然后删除OpenWithList和OpenWithProgid以外的所有键
2.2 再打开OpenWithList键,删除Default和MRUList以外的所有值
2.3 检查Default和MRUList两个值,应该分别是空字符串和字符串ba
2.4 打开OpenWithProgid,删除Default和batfile以外的所有值
2.5 检查Default和batfile的值,应该分别是空字符串和空二进制值
2.6 将下面的内容拷贝到一个新建的txt,保存后将后缀改为.reg并双击执行
[cpp] view plain copy
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat\OpenWithList]
"MRUList"="ba"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat\OpenWithProgids]
"batfile"=hex(0):
重启之后,控制面板里应该可以看到.bat的关联被重置为Unknown application了,.bat文件也应该可以直接执行了。
(本文完)
试了很多答案,只有这个可行
网页链接参考链接
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)