Я пишу инструмент, который настраивает для Вас диск WinPE, и я вызываю команды DISM из пакетного файла администратора. Однако я не могу понять, как запустить команду copype для первоначальной настройки диска."C:Program Files (x86)Windows KitsAssessment and Deployment KitWindows Preinstallation Environmentcopype.cmd"
, где находится инструмент copype, но при вызове его с dism с помощью следующей команды:Dism "C:Program Files (x86)Windows KitsAssessment and Deployment KitWindows Preinstallation Environmentcopype.cmd" amd64 C:WinPE_amd64
Он отвечает, что Dism doesn't recognise the command-line option "copype.cmd"
Если я попытаюсь запустить файл непосредственно из командной строки, он говорит, что не может найти инфраструктуру amd64. Единственный способ Я могу заставить его начать, если я запускаю среду средств развертывания и обработки образов администратора и запускаю команду copype. Там должен быть способ сделать это, но я не могу понять, как.
Как запустить copype.cmd для WinPE из пакетного файла
2 ответа
оказывается, Windows ADK Copype был немного сломан, так как Windows 8. Не хватает какой-то переменной. Если вы поместите это в свой пакетный файл, вы можете использовать call :copype
для вызова команды:
:copype
setlocal
set TEMPL=media
set FWFILES=fwfiles
rem
rem Input validation
rem
if /i "%1"=="/?" goto usage
if /i "%1"=="" goto usage
if /i "%~2"=="" goto usage
if /i not "%3"=="" goto usage
rem
rem Set environment variables for use in the script
rem
set WINPE_ARCH=%1
set SOURCE=C:\Program Files (x86)\Windows Kits\Assessment and Deployment Kit\Windows Preinstallation Environment\%WINPE_ARCH%
set FWFILESROOT=C:\Program Files (x86)\Windows Kits\Assessment and Deployment Kit\Deployment Tools\%WINPE_ARCH%\Oscdimg
set DEST=%~2
set WIMSOURCEPATH=%SOURCE%\en-us\winpe.wim
rem
rem Validate input architecture
rem
rem If the source directory as per input architecture does not exist,
rem it means the architecture is not present
rem
if not exist "%SOURCE%" (
echo ERROR: The following processor architecture was not found: %WINPE_ARCH%.
exit /b 1
)
rem
rem Validate the boot app directory location
rem
rem If the input architecture is validated, this directory must exist
rem This check is only to be extra careful
rem
if not exist "%FWFILESROOT%" (
echo ERROR: The following path for firmware files was not found: "%FWFILESROOT%".
exit /b 1
)
rem
rem Make sure the appropriate winpe.wim is present
rem
if not exist "%WIMSOURCEPATH%" (
echo ERROR: WinPE WIM file does not exist: "%WIMSOURCEPATH%".
exit /b 1
)
rem
rem Make sure the destination directory does not exist
rem
if exist "%DEST%" (
echo ERROR: Destination directory exists: %2.
exit /b 1
)
mkdir "%DEST%"
if errorlevel 1 (
echo ERROR: Unable to create destination: %2.
exit /b 1
)
echo.
echo ===================================================
echo Creating Windows PE customization working directory
echo.
echo %DEST%
echo ===================================================
echo.
mkdir "%DEST%\%TEMPL%"
if errorlevel 1 goto :FAIL
mkdir "%DEST%\mount"
if errorlevel 1 goto :FAIL
mkdir "%DEST%\%FWFILES%"
if errorlevel 1 goto :FAIL
rem
rem Copy the boot files and WinPE WIM to the destination location
rem
xcopy /cherky "%SOURCE%\Media" "%DEST%\%TEMPL%\"
if errorlevel 1 goto :FAIL
mkdir "%DEST%\%TEMPL%\sources"
if errorlevel 1 goto :FAIL
copy "%WIMSOURCEPATH%" "%DEST%\%TEMPL%\sources\boot.wim"
if errorlevel 1 goto :FAIL
rem
rem Copy the boot apps to enable ISO boot
rem
rem UEFI boot uses efisys.bin
rem BIOS boot uses etfsboot.com
rem
copy "%FWFILESROOT%\efisys.bin" "%DEST%\%FWFILES%"
if errorlevel 1 goto :FAIL
if exist "%FWFILESROOT%\etfsboot.com" (
copy "%FWFILESROOT%\etfsboot.com" "%DEST%\%FWFILES%"
if errorlevel 1 goto :FAIL
)
endlocal
echo.
echo Success
echo.
cd /d "%~2"
goto :EOF
:usage
echo Creates working directories for WinPE image customization and media creation.
echo.
echo copype { amd64 ^| x86 ^| arm } ^<workingDirectory^>
echo.
echo amd64 Copies amd64 boot files and WIM to ^<workingDirectory^>\media.
echo x86 Copies x86 boot files and WIM to ^<workingDirectory^>\media.
echo arm Copies arm boot files and WIM to ^<workingDirectory^>\media.
echo Note: ARM content may not be present in this ADK.
echo workingDirectory Creates the working directory at the specified location.
echo.
echo Example: copype amd64 C:\WinPE_amd64
goto :EOF
:FAIL
echo ERROR: Failed to create working directory.
set EROP=YEs
exit /b 1
Rem CopyPE created by Microsoft and Edited by Lucas Elliott and wjsorensen on technet
::------------------------ END --------------------------
для тех, кто использует Windows 8, вы можете увидеть их решение здесь: https://social.technet.microsoft.com/Forums/ie/en-US/1155d38c-e7fd-4b4f-a31c-26875d4f47a7/windows-pe-error-using-windows-8-adk?forum=w8itproinstall
Ehm, я вышел сюда в поисках информации о copype, и пошел по ссылке на форум technet. Есть новый пост несколько дней назад - я настоятельно рекомендую прочитать его. Короче говоря, copype не сломан вообще: он просто предназначен для запуска из среды ADK (командная строка вызывается, нажав на ссылку apposite в Пуск -> Все программы -> Windows Kits -> Windows ADK). (Ну хорошо, это путь на Win 7: я установил Windows 8 ADK (версия 6.3.9600.17029) на Windows 7; в Win 8, и, вероятно, также в Win 10, путь будет несколько отличаться из-за различной компоновки меню "Пуск".)
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]