|  | 
| 本帖最后由 9zhmke 于 2022-10-15 09:30 编辑 
 我之前只用一种也出问题,后来就把两种方法都用上才好一些。
 这里使用了删除之前的注册表的方案,比直接加注册表的情况成功率高一点点,但也会伤害到之前的图片打开软件。
 理论上你把soft_exe和software改成你自己的软件就可以了,实际上还是不一定,有些软件这么用不一定能成功,要根据实际情况调整
 
 
 [code]
 ECHO 程序运行中,请稍等.....
 pushd "%~dp0" >nul 2>&1
 setlocal enabledelayedexpansion
 del tmp.reg >nul 2>nul
 
 :开始
 set p=%cd%
 set soft_exe=xnviewmp.exe
 set software=XnView
 echo >tmp.reg Windows Registry Editor Version 5.00
 for %%i in (raw,crw,cr2,raf,dcr,mrw,nef,orf,pef,srf,x3f,iff,sgi,xbm,xpm,emf,pcx,tga,png,bmp,jpg,jpeg,gif,ico,psd,tif,tiff,ais,ani,cur,emf,eps,lwf,webp,wmf,heic) do (
 echo >>tmp.reg [-HKEY_CLASSES_ROOT\.%%i]
 echo >>tmp.reg [HKEY_CLASSES_ROOT\.%%i]
 echo >>tmp.reg @="%software%.%%i"
 echo >>tmp.reg "PerceivedType"="%software%"
 echo >>tmp.reg "Content Type"=""
 echo >>tmp.reg [HKEY_CLASSES_ROOT\.%%i\OpenWithList]
 echo >>tmp.reg [HKEY_CLASSES_ROOT\.%%i\OpenWithList\%soft_exe%]
 echo >>tmp.reg @=""
 echo >>tmp.reg [HKEY_CLASSES_ROOT\.%%i\OpenWithProgIds]
 echo >>tmp.reg "%software%.%%i"=""
 echo >>tmp.reg [HKEY_CLASSES_ROOT\.%%i\PersistentHandler]
 echo >>tmp.reg @="{098f2470-bae0-11cd-b579-08002b30bfeb}"
 echo >>tmp.reg [HKEY_CLASSES_ROOT\.%%i\UndoClass]
 echo >>tmp.reg @="%software%.%%i"
 echo >>tmp.reg [-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%%i]
 echo >>tmp.reg [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%%i]
 echo >>tmp.reg [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%%i\OpenWithProgids]
 echo >>tmp.reg "%software%.%%i"=hex^(0^)^:
 echo >>tmp.reg [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%%i\UserChoice]
 echo >>tmp.reg "Hash"="AUGg6DegRxo="
 echo >>tmp.reg "ProgId"="%software%.%%i"
 )
 echo. >>tmp.reg
 regedit /s tmp.reg
 del tmp.reg
 for %%i in (raw,crw,cr2,raf,dcr,mrw,nef,orf,pef,srf,x3f,iff,sgi,xbm,xpm,emf,pcx,tga,png,bmp,jpg,jpeg,gif,ico,psd,tif,tiff,ais,ani,cur,emf,eps,lwf,webp,wmf,heic) do assoc .%%i=%software%.%%i&ftype %software%.%%i="%cd%\%soft_exe%" "%%1"
 :EXIT
 [code]
 | 
 评分
查看全部评分
 |