@echo off
rem 本批处理作用是为了把现成的ISO文件转换成ISZ文件
title ISO2ISZ
echo 正在把%1文件从ISO格式转换为ISZ格式...
if exist "%ProgramFiles%\UltraISO\UltraISO.exe" (
if not exist "%ProgramFiles%\UltraISO\ISO2ISZ.CMD" COPY "%~f0" "%ProgramFiles%\UltraISO\ISO2ISZ.CMD"
goto DO_ISO2ISZ
)
if exist "%ProgramFiles(x86)%\UltraISO\UltraISO.exe" (
if not exist "%ProgramFiles(x86)%\UltraISO\ISO2ISZ.CMD" COPY "%~f0" "%ProgramFiles(x86)%\UltraISO\ISO2ISZ.CMD"
goto DO_ISO2ISZ
) else (
echo "UltraISO程序不存在!"
pause
goto END
)
:DO_ISO2ISZ
if exist "%ProgramFiles%\UltraISO\UltraISO.exe" set ULTRAISO="%ProgramFiles%\UltraISO\UltraISO.exe"
if exist "%ProgramFiles(x86)%\UltraISO\UltraISO.exe" set ULTRAISO="%ProgramFiles(x86)%\UltraISO\UltraISO.exe"
%ULTRAISO% -compress 6 -bin2isz %1 -output "%~dpn1.isz"
rem 使用%ULTRAISO% -compress 6 -input %1 -output "%~dpn1.isz"压缩得到的ISZ文件解压缩出现来的文件会与原文件检验码不一致(ultraiso版本9.5.2.2836)
if %errorlevel% neq 0 (
echo %1压缩失败!
del "%~dpn1.isz"
pause
goto END
)
rem 按道理说,压缩后返回errorlevel为0,就说明压缩成功;可为了保险起见,还想在ISZ测试成功后再删除原ISO文件。
rem %ULTRAISO% -verify "%~dpn1.isz"
if %errorlevel% equ 0 (
echo %1压缩成功!
del %1
)
:END
rem 右键菜单调用该批处理的注册表,请根据X64,X86对路径作相应的修改。
rem Windows Registry Editor Version 5.00
rem
rem [HKEY_CLASSES_ROOT\.iso]
rem @="UltraISO"
rem
rem [HKEY_CLASSES_ROOT\UltraISO\shell\ISO2ISZ]
rem @="压缩为ISZ格式"
rem
rem [HKEY_CLASSES_ROOT\UltraISO\shell\ISO2ISZ\command]
rem @="\"C:\\Program Files (x86)\\UltraISO\\ISO2ISZ.cmd\" \"%1\""
rem 作者: zsqzsqzsq 时间: 2012-4-26 18:30