|
本帖最后由 2010feicool 于 2022-2-1 16:41 编辑
如果ISO不大的话可以用 UltraISO 和 WINRAR 实现 自动虚拟光驱加载ISO 运行其中程序,关闭程序后卸载ISO
优点是无错运行其中EXE
本人打包的某些需要虚拟光驱的游戏就用这方式,一般不超过1G,在RAMOS中运行也就是几秒钟解压的事情
从UltraISO中 drivers 文件夹 提取 IsoCmd.exe ISODrive.sys ISODrv64.sys 这三个文件,
将它们和 ISO 文件 连同如下批处理 一起打包成RAR文件,再用WINRAR将压缩包转换成自解压EXE文件,解压完毕自动执行其中的批处理BAT即可
请自行修改其中ISO文件名
批处理内容
- @echo off
- ::清理虚拟光驱
- isocmd -r
- ::记录当前盘符以及路径
- SET PF=%~d0
- SET TP=%CD%
- ::顺序找指定盘符,找不到就虚拟,为避免加密盘或坏盘错误卡死,请一条条写,U之后留给U盘或其他应用
- if exist d: (echo .) else (SET GG=d: &GOTO INS)
- if exist e: (echo .) else (SET GG=e: &GOTO INS)
- if exist f: (echo .) else (SET GG=f: &GOTO INS)
- if exist g: (echo .) else (SET GG=g: &GOTO INS)
- if exist h: (echo .) else (SET GG=h: &GOTO INS)
- if exist i: (echo .) else (SET GG=i: &GOTO INS)
- if exist j: (echo .) else (SET GG=j: &GOTO INS)
- if exist k: (echo .) else (SET GG=k: &GOTO INS)
- if exist l: (echo .) else (SET GG=l: &GOTO INS)
- if exist m: (echo .) else (SET GG=m: &GOTO INS)
- if exist n: (echo .) else (SET GG=n: &GOTO INS)
- if exist o: (echo .) else (SET GG=o: &GOTO INS)
- if exist p: (echo .) else (SET GG=p: &GOTO INS)
- if exist q: (echo .) else (SET GG=q: &GOTO INS)
- if exist r: (echo .) else (SET GG=r: &GOTO INS)
- if exist s: (echo .) else (SET GG=s: &GOTO INS)
- if exist t: (echo .) else (SET GG=t: &GOTO INS)
- :INS
- cls
- isocmd -number 1
- isocmd -i
- ping 127.0.0.1 -n 3 >nul
- ::装载ISO
- isocmd -MOUNT "%GG%" "%TP%\TTN_T2.iso"
- ping 127.0.0.1 -n 3 >nul
- ::装载完成后执行虚拟盘中某EXE
- %GG%
- INSTALL.exe
- ::关闭上面的EXE后卸载虚拟光驱
- TASKKILL /F /IM INSTALL.exe
- %PF%
- cd %TP%\
- start IsoCmd.exe -r
复制代码
批处理已上传:
0.zip
(660 Bytes, 下载次数: 20)
|
|