程序功能:
将图片文件和压缩包文件合并为jr文件
(此jr文件具有图片属性,可用缩略图模式预览;右键菜单独有“用Winrar打开”选项。相当为一个“带缩略图的压缩包文件”)
使用方法:
1.直接运行:注册及反注册jr文件
(系统未注册jr文件的情况下未注册,否则为反注册)
2.拖拽一个图片文件及一个压缩包文件到此批处理文件上:合并生成一个jr文件
(新jr文件的文件名为%~n1,即你鼠标点着拖到P上的文件的名字。)
最新代码如下:
欢迎大家测试反馈!- @echo off
- color e&title JR图片压缩包
- setlocal enabledelayedexpansion
- ::变量设置
- set #h=echo.^&echo.^&echo
- set #=echo
- set @rx=rar zip 7z
- set @px=jpg jpeg gif png
- if "%~2" equ "" (
- reg query HKEY_CLASSES_ROOT\.jr 2>nul>nul
- if errorlevel 1 (
- %#h%注册jr类型文件&echo.
- call :_aj >nul
- ) else (
- %#h%反注册jr类型文件&echo.
- call :_dj >nul
- )
- ping -n 2 127.1 >nul&exit /b
- ) else (
- for %%a in (!@rx!) do (
- if /i "%~x1" equ ".%%a" set @r=%1
- if /i "%~x2" equ ".%%a" set @r=%2
- )
- for %%a in (!@px!) do (
- if /i "%~x1" equ ".%%a" set @p=%1
- if /i "%~x2" equ ".%%a" set @p=%2
- )
- if "!@r!!@p!" equ "" (%#h%请正确选择图片及压缩包文件!&echo.&goto _end) else (
- if not defined @r %#h%没有找到压缩包文件!&echo.&goto _end
- if not defined @p %#h%没有找到图片文件!&echo.&goto _end
- )
- if not exist "%~dp0\%~n1.jr" (
- copy /b !@p! + !@r! %~dp0\%~n1.jr >nul
- if errorlevel 0 %#h%合并成功!&echo.&ping -n 2 127.1 >nul&exit
- ) else (
- %#h%当前目录下存在同名文件!&echo.&goto _end
- )
- )
- :_end
- pause >nul
- exit /b
- ::::::::::::::::::::::::::::::调用区::::::::::::::::::::::::::::::
- :_aj
- reg add HKEY_CLASSES_ROOT\.jr /ve /d jrfile /f
- reg add HKEY_CLASSES_ROOT\.jr /v "Content Type" /d "image/jr" /f
- reg add HKEY_CLASSES_ROOT\.jr /v PerceivedType /d image /f
- reg add HKEY_CLASSES_ROOT\.jr\OpenWithList /f
- reg add HKEY_CLASSES_ROOT\.jr\OpenWithProgids /v jrfile /t reg_none /f
- reg add HKEY_CLASSES_ROOT\.jr\PersistentHandler /ve /d {098f2470-bae0-11cd-b579-08002b30bfeb} /f
- reg add HKEY_CLASSES_ROOT\.jr\UndoClass /ve /d jrfile /f
- ::缩略图预览属性
- reg add HKEY_CLASSES_ROOT\.jr\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1} /ve /d {7376D660-C583-11d0-A3A5-00C04FD706EC} /f
- reg add HKEY_CLASSES_ROOT\.jr\CLSID /ve /d {25336920-03F9-11cf-8FD0-00AA00686F13} /f
- reg add HKEY_CLASSES_ROOT\jrfile /ve /d "007科技jr图像" /f
- reg add HKEY_CLASSES_ROOT\jrfile /v EditFlags /t reg_dword /d 00010000 /f
- reg add HKEY_CLASSES_ROOT\jrfile /v FriendlyTypeName /t REG_EXPAND_SZ /d "@%SystemRoot%\system32\shimgvw.dll,-303" /f
- reg add HKEY_CLASSES_ROOT\jrfile /v ImageOptionFlags /t reg_dword /d 0x3 /f
- reg add HKEY_CLASSES_ROOT\jrfile\CLSID /ve /d {25336920-03F9-11cf-8FD0-00AA00686F13} /f
- reg add HKEY_CLASSES_ROOT\jrfile\DefaultIcon /ve /d "shimgvw.dll,3" /f
- reg add HKEY_CLASSES_ROOT\jrfile\shell
- reg add HKEY_CLASSES_ROOT\jrfile\shell\open /v MuiVerb /d "@shimgvw.dll,-550" /f
- reg add HKEY_CLASSES_ROOT\jrfile\shell\open\command /ve /d "rundll32.exe C:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %%1" /f
- reg add HKEY_CLASSES_ROOT\jrfile\shell\open\DropTarget /v Clsid /d {E84FDA7C-1D6A-45F6-B725-CB260C236066} /f
- reg add HKEY_CLASSES_ROOT\jrfile\shell\rarpic /ve /d "用 Winrar 打开 (&W)" /f
- reg add HKEY_CLASSES_ROOT\jrfile\shell\rarpic\command /ve /d "winrar.exe %%1" /f
- assoc .exe=exefile
- goto :eof
- ::::::::::::::::::::::::::::::调用区::::::::::::::::::::::::::::::
- :_dj
- reg delete HKEY_CLASSES_ROOT\.jr /f
- reg delete HKEY_CLASSES_ROOT\jrfile /f
- assoc .exe=exefile
- goto :eof
复制代码 鉴于方便测试、及保持代码的标准性,特发上附件。
附件内含有批处理程序及一个测试图片和压缩包文件。 |