我有一个可启动闪存驱动器,上面安装了 WINPE,我希望能够将所述可启动 USB 转换为 ISO 文件 来自批处理或 powershell 文件。我尝试使用 Folder2iso 之类的工具,但它不支持创建可启动的 iso 文件。ImgBurn 看起来很有前途,但无论我如何调整配置,iso 都无法启动,而且它不容易实现便携性,而这正是我正在创建的程序所需要的。
经过进一步挖掘后,我可以创建如下 iso:
pushd C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\Oscdimg
xcopy "F:\" "%temp%\WinPECopy\media\"
xcopy "C:\WinPE_amd64\fwfiles" "%temp%\WinPECopy\fwfiles\"
"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\MakeWinPEMedia.cmd" /ISO "%temp%\WinPECopy" "C:\WinPE_Copy.iso"
但随后我收到以下错误:
这可能是因为我将 NET 框架和自定义文件添加到了 USB 驱动器,但使用了 C:\WinPE_amd64\fwfiles 中未更改的默认 efisys.bin 文件。您可以在CreateWinPEMedia.cmd
以下文件中看到这一点:
:ISOWorker_OscdImgCommand
rem
rem Set the correct boot argument based on availability of boot apps
rem
set BOOTDATA=1#pEF,e,b"%WORKINGDIR%\%FWFILES%\efisys.bin"
if exist "%WORKINGDIR%\%FWFILES%\etfsboot.com" (
set BOOTDATA=2#p0,e,b"%WORKINGDIR%\%FWFILES%\etfsboot.com"#pEF,e,b"%WORKINGDIR%\%FWFILES%\efisys.bin"
)
rem
rem Create the ISO file using the appropriate OSCDImg command
rem
echo Creating %DEST%...
echo.
oscdimg -bootdata:%BOOTDATA% -u1 -udfver102 "%WORKINGDIR%\%TEMPL%" "%DEST%" >NUL
if errorlevel 1 (
echo ERROR: Failed to create "%DEST%" file.
goto fail
)
有人知道我该如何解决这个问题吗?我尝试删除该etfsboot.com
文件,因为它似乎可以处理该文件是否存在,但随后我收到了错误Failed to boot: No bootable medium found.
。
另一个更新
我认为我找到了一些线索,当我弄清楚这一点时,我发现这是一个 XY 问题(@Biswapriy 指出)。我想我可以让它不再是一个 XY 问题,但我必须先做更多的研究。
到目前为止我在想:
setps:
1. Mount the USB Drive
2. Copy everything to a folder (backup2 script)
3. unmount the usb drive
4. Create new WinPE base: copype amd64 C:\WinPE_ISO_START
5. mount the new image: dism /Mount-Image /ImageFile:"C:\WinPE_ISO_START\media\boot.wim" /index:1 /MountDir:"C:\WinPE_ISO_START\mount"
6. restore from the copy
7. Unmount the image: dism /Unmount-Image /MountDir:"C:\WinPE_ISO_START\mount: /commit
8. Create the iso: makewinpemedia /iso "C:\WinPE_ISO_START" "C:\Changed iso.iso"
答案1
- 使用以下方式从 VLC 获取 ISO安装.wim文件而不是安装.edf
- 挂载 ISO 并将文件复制到文件夹中
(我的是:C:\TempPath\WindowsImages\ExtractedOriginalISO\Windows10) - 将解压的 ISO 文件挂载到指定挂载文件夹:
Dism /Mount-Image /ImageFile:C:\TempPath\WindowsImages\ExtractedOriginalISO\Windows10\sources\install.wim /Index:5 /MountDir:C:\TempPath\Mount
- 在 Mount 文件夹中打开已安装的映像并导航至计算机目录:\Windows并创建一个黑豹/无人值守文件夹,然后添加无人参与文件文件。
- 卸载映像:
Dism /Unmount-Image /MountDir:C:\TempPath\Mount /Commit
- 从文件夹创建 ISOC:\TempPath\WindowsImages\ExtractedOriginalISO\Windows10:
以管理员身份打开部署映像工具
运行命令:
oscdimg.exe -m -o -u2 -udfver102 -bootdata:2#p0,e,bC:\ TempPath \ WindowsImages \ ExtractedOriginalISO \ Windows10 \ boot \ etfsboot.com#pEF,e,bC:\ TempPath \ WindowsImages \ ExtractedOriginalISO \ Windows10 \ efi \ microsoft \ boot \ efisys.bin C:\ TempPath \ WindowsImages \ ExtractedOriginalISO \ Windows10 C:\ TempPath \ WindowsImages \ WindowsLVT.iso