==== Введение ==== Настоящая статья описывает процесс установки Windows 8 на планшет Chuwi Vi10 из штатного дистрибутива с возможными модификациями. ==== Состав дистрибутива ==== ==== Создание партиций ==== === Создание партиций с нуля === WinPE запускает скрипт \windows\system32\Startnet.cmd, который в свою очередь запускает USB1:\Scripts\Main.cmd. Логика скриптов следующая • Сохранение времени запуска в x:\StartTime.txt • Вызов wpeinit • Вызов wpeutil UpdateBootInfo • Вычисление буквы системного диска и занесение её в переменную %WinPESource% reg query "HKLM\SYSTEM\CurrentControlSet\Control" /v PEBootRamdiskSourceDrive  • Если этот способ не обнаружил путь к корню диска (переменная %WinPESource% пустая), то ○ Команда diskpart /s x:\FindVol.txt>x:\VolumeList.txt составляет список томов ○ Ищется том с меткой WINPE и файловой системой FAT32 ○ Полученный диск присваивается в переменную %WinPESource% • Далее управление передается в Main.cmd: call %WinPESource%Scripts\Main.cmd • Переключаемся в режим высокой производительности powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c • Ищем встроенный диск, игнорируя флешки с меткой WINPE ○ Собираем список дисков командой diskpart /s %WinPESource%DiskpartFiles\listdisk.txt>x:\Disks.txt ○ Для всех дисков из файла x:\Disks.txt делаем следующее § Создаем файл x:\Par.txt со скриптом sel disk ; det disk; exit § Выполняем скрипт diskpart /s x:\Par.txt>x:\ParOutput.txt § Записываем в переменную %Disk номер диска, если у него буква no (???) или метка не WINPE § Вообще код сильно завязан на английскую версию windows и на локализованной версии будет вести себя некорректно ○ Последний из дисков считаем искомым. Если такого диска не нашлось, то молча берем диск 0 • Сохраняем список томов diskpart /s %WinPESource%DiskpartFiles\listvol.txt>x:\Vols.txt • Создаём файл x:\checkpart.txt с содержимым select disk %Disk%; list partition; exit • Вызываем call diskpart /s x:\checkpart.txt>x:\outpar.txt • Создаем x:\DelPar.txt и добавляем в него select disk %Disk% и для каждой партиции, начиная с 16 (отсчет партиций с 1) ○ Добавляем в x:\DelPar.txt select partition ;delete partition override • В конце x:\DelPar.txt добавляем exit • Удаляем виндовые партиции вызовом diskpart /s x:\DelPar.txt • Создаем x:\wimpart.txt и добавляем в него select disk %Disk% и для каждой томов с 0 по 13 ○ Добавляем в x:\wimpart.txt select volume ""; attributes volume set hidden • В конце x:\DelPar.txt добавляем create partition msr size=128 create partition primary shrink minimum=5400 format quick fs=ntfs label="Windows" assign letter="W" create partition primary format quick fs=ntfs label="Images" assign letter="T" set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac" gpt attributes=0x8000000000000001 exit • Закоментировано rem @echo create partition efi size=100>>x:\wimpart.txt rem @echo format quick fs=fat32 label="System">>x:\wimpart.txt rem @echo assign letter="S">>x:\wimpart.txt • Партиционирование диска командой diskpart /s x:\wimpart.txt ○ выбираем диск %Disk% ○ Партиция Тип Размер Файловая Буква Метка система 1 MSR 128M 2 Primary Оставшееся место NTFS W Windows основная 3 Primary 5400M NTFS T Images recovery ○ Присваиваем recovery партиции тип "de94bba4-06d1-4d40-a16a-bfd50179d6ac" и атрибут 0x8000000000000001 === Добавление партиций к существующему андроиду === === Установка Windows с очисткой существюущих партиций ==== ==== Подготовка служебных партиций ==== ==== Копирование дистрибутива в режиме WMIBoot ==== • Поиск буквы диска USB2 ○ Составляем список дисков вызовом diskpart /s %WinPESource%DiskpartFiles\listVol.txt>%WinPESource%Output.txt ○ Ищем диск с файлом \images\install.txt и заносим в переменную %InstallPath ○ Убеждаемся в наличии файла %InstallPath%\Install.wim ○ Убеждаемся в наличии файла %InstallPath%\Winre.wim • Создаем каталоги на C: и M: ○ w:\recycler\scratch ○ t:\"windows images" ○ t:\recovery\windowsre • Копируем wim на M: ○ copy %InstallPath%\install.wim m:\"windows images" ○ copy %InstallPath%\winre.wim m:\recovery\windowsre • Copying over Office Bits for Pre-installation during Audit mode: xcopy "%WinPESource%Office 15.3 AFO bits"\*.* w:\Office_Temp\ /cherky • Ставим Windows в режиме WIMboot. DISM /Apply-Image /ImageFile:"t:\windows images\install.wim" /ApplyDir:w: /Index:1 /WIMBoot /ScratchDir:w:\recycler\SCRATCH ==== Прочие действия ==== • Копируем тесты TEST_TOOL SHOULD BE DELETED PRIOR TO SHIPPING %WinpeSource%Scripts\7za.exe x %WinpeSource%TEST_TOOL.zip -oW:\ %WinpeSource%Scripts\7za.exe x %WinpeSource%TEST_TOOL_F.zip -oW:\ • Копируем активатор \OA3_tool SHOULD BE DELETED PRIOR TO SHIPPING mkdir w:\OA3_tool if EXIST %WinpeSource%OA3_tool\run.cmd xcopy %WinpeSource%OA3_tool w:\OA3_tool /y /s • Закомментировано копирование key management \KeyManagement SHOULD BE DELETED PRIOR TO SHIPPING mkdir w:\KeyManagement if EXIST %WinpeSource%KeyManagement\KeyM.cmd xcopy %WinpeSource%KeyManagement w:\KeyManagement /y /s • Настройка записи в EFI w:\WINDOWS\SYSTEM32\BCDBOOT w:\WINDOWS • Настройка recovery w:\windows\system32\reagentc /SetREImage /Path T:\RECOVERY\WINDOWSRE /target w:\windows • Копируем unattend.xml для авторазвертывания if EXIST %WinPESource%Images\audit\Unattend.xml copy %WinPESource%Images\audit\Unattend.xml w:\Windows\Panther /y • Запускаем нечто %WinpeSource%Scripts\H2OUVE-W-Q2S.exe • Чистимся rmdir /s /q w:\recycler • Останавливаемся Wpeutil shutdown