Page 1 sur 1

[TUTORIEL] Clé USB WinPE bootable pour installation de Windows 11 sur PC non compatible

Posté : 03 oct 2024 19:15
par Joselito
Une méthode parmi d'autres pour réaliser une "Clean Installation" de Windows 11 sur un PC non compatible, en n'utilisant que les ressources Windows.

L'exécution à partir de Windows est connue :
Un ISO de W11 24H2 ou 25H2, monté en disque virtuel ou extrait sur une clé USB, puis excécution de la commande :

Code : Tout sélectionner

X:\setup /product server
X <=> au disque virtuel ou à la clé USB

Mais sans OS, comme après l'échec de l'installation standard et la suppression des partitions du PC, que faire ?
Réponse : Créer une clé USB de boot Windows PE ou WinPE (PE pour Preinstallation Environment) pour pouvoir lancer la commande setup depuis ce mini système d'exploitation.
Fonctionne avec W11 24H2, LTSC 2024 et W11 25H2
Limite 1 = Installe la version Pro de Windows. Mais il est possible d'installer la version famille avec quelques manipulations supplémentaires (cf infra).
Limite 2 = le jour ou Microsoft bloquera le truc.
Toujours fonctionnel le 27/09/2025.
Testé sur un portable I3-7100U et sur VM.
  1. Télécharger et installer Windows ADK et son module PE sur un PC :
  2. Créer une clé USB à 2 partitions (dans l'esprit du tutoriel de ThiWeb consultable ici)
    • Planter une clé USB de 16 Go ou plus dans le PC (recommandée 16 Go)
    • Dans une fenêtre de commande, exécuter successivement :

      Code : Tout sélectionner

      Diskpart
      List disk
      Select Disk X (X remplacé par le numéro correspondant à la clé)
      Clean
      Convert MBR
      Create Partition Primary size=1024 
      Active
      Format fs=FAT32 quick label="WINPE"
      Assign
      Create Partition Primary
      Format fs=NTFS quick label="WINISO"
      Assign  
      Exit
  3. Copier les fichiers Windows PE sur la première partition de la clé
    • Dans le menu Démarrer, répertoire "Windows Kits", lancer "Environnement de déploiement et d’outils de création d’images" en administrateur.
    • Exécuter successivement les instructions :

      Code : Tout sélectionner

      copype amd64 C:\WinPE_amd64
      MakeWinPEMedia /UFD C:\WinPE_amd64 X:
      X <=> à la lettre de la partition "WINPE"
    • Quitter la console
  4. Recopier tout le contenu de l'iso Windows 11 sur la seconde partition, "WINISO", de la clé
  5. Booter le "vieux" PC sur la clé.
  6. Une fois sous Windows PE (ça prend 20 secondes)
    • Exécuter l'instruction suivante, en remplaçant "X" par la lettre correspondant à la partition WINISO :

      Code : Tout sélectionner

      X:\setup /product server
    • Si nécessaire, afficher au préalable la liste des partitions (Diskpart est intégré à Windows PE) :

      Code : Tout sélectionner

      Diskpart
      List volume
      Exit
    • Attention, le clavier est QWERTY (":" = shift [M], "\" = "*", celle qui est sous "µ" , "/" = "!", "m" = ",")

      Visuellement, Windows PE se résume à une fenêtre de commande

      Image
  7. L'installation de Windows 11 démarre...

    Image




Pour disposer du clavier "AZERTY" dans Windows PE, il est nécessaire de modifier le ficher image "boot.wim" présent dans le dossier "sources" de la partition WinPE de la clé.
Pour ça, il faut "monter l'image" (décompresser le fichier boot.wim) dans un répertoire temporaire, la modifier puis la "descendre" ou la "démonter" (compresser et sauvegarder le fichier boot.wim) à sa place initiale.
  • Planter la clé USB dans le PC
  • Créer pour l'occasion un dossier de travail, par exemple "D:\mount". Ce dossier doit être vide.
  • Ouvrir une console PowerShell en administrateur
  • Exécuter successivement ces 3 instructions en les adaptant à votre contexte. Ici, la partition WinPE est en F: et le dossier de travail est D:\mount

    Code : Tout sélectionner

    Dism /Mount-WIM /WimFile:"F:\sources\boot.wim" /Index:1 /MountDir:"D:\mount"
    Dism /Image:"D:\mount" /Set-InputLocale:fr-FR
    Dism /Unmount-WIM /MountDir:"D:\mount" /Commit
  • La clé est prête
Si vous avez eu la curiosité de regarder au passage le contenu du dossier de travail, pensez à le refermer avant d'exécuter la 3e instruction.
À connaitre également sa variante qui permet de démonter l'image sans sauvegarde :


On peut aussi automatiser le lancement de l'installation de l'OS copié sur la 2e partition de la clé, en plaçant la commande "setup /product server" dans le fichier "startnet.cmd" de WinPE.
Même principe : Monter, modifier, démonter.
  • Monter le fichier "boot.wim" = Instruction "Dism /Mount-WIM ..." ci-dessus
  • Ouvrir avec le bloc-notes en mode administrateur, le fichier "startnet.cmd" contenu dans le dossier "Windows\System32" du dossier de travail (D:\mount dans l'exemple) et qui ne contient initialement qu'une ligne :

    Code : Tout sélectionner

    wpeinit
  • Ajouter les 2 lignes suivantes à la fin du fichier :

    Code : Tout sélectionner

    @for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do @if exist %%a:\setup.exe set IMAGESDRIVE=%%a
    %IMAGESDRIVE%:\setup.exe /product server
  • Enregistrer le fichier "startnet.cmd"
  • Refermer le dossier de travail et le bloc-notes
  • Sauvegarder et descendre le fichier "boot.wim" = Instruction "Dism /Unmount-WIM ... /commit" ci-dessus
  • La clé est prête. Booter dessus, l'installation de Windows démarrera automatiquement



Pour installer l'édition Famille de Windows.
Il faut ne conserver qu'une édition au lieu des 11 contenues dans l'iso "Consumer" de Windows, plus précisément dans son fichier "...\sources\install.wim".
De ce fait, l'instruction "setup /product server" installera la seule édition disponible, l'édition Famille" (malgré l'appellation Server affichée dans les fenêtres). CQFD
Pour réaliser ça en Powershell administrateur :
  • Code : Tout sélectionner

    Export-WindowsImage -SourceImagePath X:\sources\install.wim -SourceIndex 1 -DestinationImagePath Z:\wim\install_light.wim
  • Remplacer sur la clé, "install.wim" par sa version allégée après l'avoir renommé
Comme toujours, à adpater à votre environnement
X: = La partition de la clé USB sur laquelle est placé l'OS à installer (ou un endroit contenant l'iso décompressé)
1 = Le numéro de l'édition "Famille" dans le fichier "install.wim" de départ
Z:\wim = Dossier de travail créé pour l'occasion



La documentation :

Re: [TUTORIEL] Clé USB WINPE pour installation W11 24H2 sur PC non compatible

Posté : 03 oct 2024 19:15
par balou le fou
MErci Joselito

Re: [TUTORIEL] Clé USB WINPE pour installation W11 24H2 sur PC non compatible

Posté : 03 oct 2024 19:42
par Bill_Boquet
Respect @Joselito et merci :thumbsup:

Re: [TUTORIEL] Clé USB WINPE pour installation W11 24H2 sur PC non compatible

Posté : 03 oct 2024 21:26
par ThiWeb
Pour une install clean, la méthode avec le .REG ne fonctionne plus avec la 24H2 ?
Plus simple que tout ça.

Mais si c'est la seule solution... merci ! ;)

ThiWeb

Re: [TUTORIEL] Clé USB WINPE pour installation W11 24H2 sur PC non compatible

Posté : 03 oct 2024 22:29
par dosibox
Moi, c'est avec le fichier AutoUnattend.xml où la réponse m'intéresse (si ça fonctionne toujours avec Windows 11 24H2) ^^
Apparemment oui, mais il faut créer le fichier AutoUnattend.xml soi-même ici

Re: [TUTORIEL] Clé USB WINPE pour installation W11 24H2 sur PC non compatible

Posté : 03 oct 2024 22:50
par Joselito
@ThiWeb,
Je ne sais pas, je n'ai pas essayé. On ne peut pas être partout. :)
Et j'ai précisé : une des méthodes...

Re: [TUTORIEL] Clé USB WINPE pour installation W11 24H2 sur PC non compatible

Posté : 04 oct 2024 07:55
par LaDidi21
@ThiWeb :
La solution de Joselito fonctionne quelle que soit la version... pour l'instant.
Par contre, je doute que qui que ce soit ait vérifié que cela génère, ou non, un système installé identique.

Re: [TUTORIEL] Clé USB WinPE pour installation W11 24H2 sur PC non compatible

Posté : 06 oct 2024 18:18
par Joselito
@All,

Bon, il n'y en a pas beaucoup qui ont suivi le tuto !
Il manquait un instruction §3, ça ne risquait pas de fonctionner. :))

@LaDidi21,
J'ai fait 2 images système avec "Sauvegarder et restaurer (Windows 7)" mais pour les comparer :frown:

Re: [TUTORIEL] Clé USB WinPE pour installation W11 24H2 sur PC non compatible

Posté : 06 oct 2024 21:53
par LaDidi21
@Joselito :
LE test à ce niveau là est trop tardif.
Je pense qu'il faut; plutôt, comparer les répertoires d'installation C:\~windows* ?

Sinon, install normal, snapshot logiciel avant, setup /server, snapshot logiciel après, mesure des évolutions mais je crains qu'il y ait beaucoup de modifications. :@ ..

Re: [TUTORIEL] Clé USB WinPE bootable pour installation W11 24H2 sur PC non compatible

Posté : 15 jui 2025 13:19
par Joselito
@All,
Ajout des instructions pour avoir le clavier Fr (AZERTY) sous Windows PE.

Re: [TUTORIEL] Clé USB WinPE bootable pour installation W11 24H2 sur PC non compatible

Posté : 16 jui 2025 14:59
par Joselito
@All,
Ajout d'une astuce pour automatiser la commande de lancement de l'installation de Windows.

Re: [TUTORIEL] Clé USB WinPE bootable pour installation W11 24H2 sur PC non compatible

Posté : 18 jui 2025 12:48
par Joselito
@All,
Ajout d'une combine pour installer l'édition "Famille" au lieu de l'édition Pro qui s'installe normalement avec l'instruction "setup /product server".

Ps : Je n'ai pas testé en mise à jour vers 24H2 à partir d'un Windows plus ancien mais ...

Re: [TUTORIEL] Clé USB WinPE bootable pour installation W11 24H2 sur PC non compatible

Posté : 01 jui 2025 16:05
par Joselito
@All,
Mauvaise nouvelle.
Comme évoqué ici, l'astuce "setup /product server" ne fonctionne plus avec la preview de 25H2 (27881.1000).
Certes ce n'est qu'une preview obtenue chez UUU dump.

Image

Re: [TUTORIEL] Clé USB WinPE bootable pour installation W11 24H2 sur PC non compatible

Posté : 02 jui 2025 20:30
par ThiWeb
D'ici les 3-4 mois qu'il reste avant la sortie de la 25H2, une solution sera sortie 😉

ThiWeb

Re: [TUTORIEL] Clé USB WinPE bootable pour installation W11 24H2 sur PC non compatible

Posté : 20 sep 2025 15:55
par Joselito
@All,

Pour le cohérence du propos, je reprends ici l'info donnée dans ce topic : Windows 11 25H2 est disponible en Release Preview
Donc, contrairement à la preview de 25H2 disponible en juillet (voir 2 messages plus haut), la version 26200.5074 du 28/08/2025, s'installe bien avec l'instruction :

Code : Tout sélectionner

setup /product server
:thumbsup:

Edit : Fonctionne également sur la version 26200.6584 datée du 15/09/2025.

Re: [TUTORIEL] Clé USB WinPE bootable pour installation de Windows 11 sur PC non compatible

Posté : 17 oct 2025 14:03
par greg888
Bonjour, pour aller plus loin avec les propositions de @Joselito, je vous propose un script. La seul contrainte mais pas obligatoire, c'est l'ajout du module PowerShell à WinPE (seulement pour nom de machine avec un fichier réponse et pour désactiver l'indexation). Je peux vous donner un script pour personnaliser WinPE si cela vous intéresse.
Bien évidement l'idée du script est de déployer une wim ou swm sans aucune vérification.
Vous pouvez même faire un déploiement automatique sur des tablettes sans tactile actif ;)


Prérequis :
- Maitrise de l'ADK
- Création d'un dossier Images et Drivers (non obligatoire) à la racine du support

Code : Tout sélectionner

@echo off & title Installation de Windows 1X
setlocal enabledelayedexpansion
powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
powershell -Command "& {Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force}"
::Modele sans espace, sans virgule
for /f "tokens=2 delims==" %%j in ('wmic csproduct get name /value') do set Model=%%j
set Model=%Model: =%
set Model=%Model:,=%
set Model=%Model:~0,15%
::Serial Number
for /f "tokens=2 delims==" %%s in ('wmic bios get SerialNumber /value') do set SerialNumber=%%s
set SerialNumber=%SerialNumber:~0,15%
::Couleurs
for /f "delims=#" %%E in ('"prompt #$E# & for %%E in (1) do rem"') do set "ESCchar=%%E"
set "Black=%ESCchar%[30m"
set "Green=%ESCchar%[32m"
set "Red=%ESCchar%[31m"
set "White=%ESCchar%[97m"
::Local
cd /d "%~dp0"
::Modification unattend.xml
echo $xml = "W:\Windows\Panther\unattend.xml">renamexml.ps1
echo [xml]$xml = Get-Content $xml>>renamexml.ps1
echo $xml.unattend.settings[0].component[1].computername = "%SerialNumber%">>renamexml.ps1
echo $xml.save("W:\Windows\Panther\unattend.xml")>>renamexml.ps1
::Indexation W:
echo $Index = Get-WmiObject -Class Win32_Volume -Filter "DriveLetter='W:'">index.ps1
echo $Indexing = $Index.IndexingEnabled>>index.ps1
echo If ("$Indexing" -eq $True)>>index.ps1
echo {>>index.ps1
echo 	Write-Host "Desactivation de l'indexation">>index.ps1
echo 	$Index ^| Set-WmiInstance -Arguments @{IndexingEnabled=$False} ^| Out-Null>>index.ps1
echo }>>index.ps1
::BIOS ou UEFI
wpeutil UpdateBootInfo
for /f "tokens=2* delims= " %%A in ('reg query HKLM\System\CurrentControlSet\Control /v PEFirmwareType') do set Firmware=%%B
if %Firmware%==0x1 set Mode=%Red%BIOS%White%
if %Firmware%==0x2 set Mode=%Green%UEFI%White%
::Images
for %%i in (C D E F G H) do if exist %%i:\Images\ set ImagesDrive=%%i
if exist %ImagesDrive%:\Images\*.wim (set ReponseImages=OUI) else (set ReponseImages=NON)
::Drivers
for %%d in (C D E F G H) do if exist %%d:\Drivers\ set DriversDrive=%%d
if exist %DriversDrive%:\Drivers (set ReponseDrivers=OUI) else (set ReponseDrivers=NON)
::Tablette ou pas
for /f "tokens=2 delims=={}" %%c in ('wmic systemenclosure get Chassistypes /value') do set Chassis=%%c
if %Chassis%==30 (if %ReponseImages%==NON (goto _s) else (goto _a)) else (goto debut)

:debut
cls & color 0f
echo.
echo Modele de l'ordinateur: %Green%%Model%%White%
echo Mode de demarrage: %Green%%Mode%%White%
echo Dossier Images: %ReponseImages%
echo Dossier Drivers: %ReponseDrivers%
echo.
echo ======================= WinPE =======================
echo.
echo 1 - Capture de l'image
if %ReponseImages%==OUI (
echo.
echo 2 - Application de l'image ^(dans .\Images^)
)
if %ReponseDrivers%==OUI (
echo     et
echo 3 - Installation des pilotes ^(dans .\Drivers^)
)
echo.
echo ======================= Autres ======================
echo.
echo r - Redemarrer le PC
echo.
echo s - Eteindre le PC
echo.
echo q - Quitter
echo.
set /p V=Choisisser et appuyer sur ENTER: 
for %%v in (1 2 3 d e q r s) do if /i +%%v+==+%V%+ call :_%V% & goto debut else goto debut

:_1
cls & echo.
echo Capture de l'image
echo.
wmic logicaldisk get caption,providername,drivetype,volumename
set /p Disk1=Indiquer le disque a capturer: 
echo.
set /p Disk2=Indiquer le disque de destination: 
if not exist %Disk2%:\Images md %Disk2%:\Images
echo.
set /p nd=Indiquer nom et description: 
echo.
dism /capture-image /capturedir:%Disk1%:\ /imagefile:%Disk2%:\Images\%nd%.wim /name:"%nd%" /description:"%nd%" /Compress:max

exit /b

:_2
cls & echo.
echo Application de l'image
echo.
echo Le dossier "Images" est sur le lecteur: %Green%%ImagesDrive%%White%
echo.
echo Selection du fichier
echo. & echo.
set Index=1
for /f "tokens=1" %%F in ('dir %ImagesDrive%:\Images /b') do (
  set "Fichier[!Index!]=%%F"
  set /a Index+=1
)
set /a UBound=Index-1

for /l %%i in (1,1,%UBound%) do echo %%i. !Fichier[%%i]!
:choiceloop
echo. & echo.
set /p Choice=Indiquer le fichier a utiliser: 
if "%Choice%"=="" goto choiceloop
if %Choice% LSS 1 goto choiceloop
if %Choice% GTR %UBound% goto choiceloop

set Fichier=!Fichier[%Choice%]!

echo Suppression du disque et creation des volumes vierges
echo list disk>diskpart.txt
echo exit>>diskpart.txt
diskpart /s diskpart.txt
echo.
set /p DiskF=Indiquer le disque a formater: 
cls & echo.
dism /get-imageinfo /imagefile:%ImagesDrive%:\Images\%Fichier%
set /p Index=Indiquer l'Index a installer: 

if %Firmware%==0x1 call :_diskB
if %Firmware%==0x2 call :_diskU

diskpart /s diskpart.txt

cls & echo.
for %%f in (%Fichier%) do set ext=%%~xf
setlocal disabledelayedexpansion
if %ext%==.swm dism /apply-image /imagefile:%ImagesDrive%:\Images\%Fichier% /swmfile:%ImagesDrive%:\Images\%Fichier:~0,-4%*.swm /Index:%Index% /applydir:W:\
if %ext%==.wim dism /apply-image /imagefile:%ImagesDrive%:\Images\%Fichier% /Index:%Index% /applydir:W:\

if %Firmware%==0x1 bcdboot W:\Windows /s W:
if %Firmware%==0x2 bcdboot W:\Windows

powershell -ExecutionPolicy Bypass -File "index.ps1"
if exist "W:\Windows\Panther\unattend.xml" (powershell -ExecutionPolicy Bypass -File "renamexml.ps1")
ping -4 -n 3 "">nul

call :_3
del diskpart.txt index.ps1 renamexml.ps1
rd W:\$RECYCLE.BIN, D:\$RECYCLE.BIN, E:$RECYCLE.BIN /s /q
goto debut

:_diskB
echo select disk ^%DiskF%>diskpart.txt
echo clean>>diskpart.txt
echo create partition primary>>diskpart.txt
echo format quick fs=ntfs>>diskpart.txt
echo assign letter="W">>diskpart.txt
echo active>>diskpart.txt
echo exit>>diskpart.txt
exit /b

:_diskU
echo select disk ^%DiskF%>diskpart.txt
echo clean>>diskpart.txt
echo convert gpt>>diskpart.txt
echo create partition efi size=200>>diskpart.txt
echo format quick fs=fat32>>diskpart.txt
::echo create partition msr size=16>>diskpart.txt
echo create partition primary>>diskpart.txt
echo format quick fs=ntfs>>diskpart.txt
echo assign letter="W">>diskpart.txt
echo exit>>diskpart.txt
exit /b

:_3
cls & echo.
echo Installation des pilotes
echo.
echo Le modele de l'ordinateur est %Green%%Model%%White%
echo.
if exist %DriversDrive%:\Drivers\%Model% (
echo Le dossier "Drivers" est sur le lecteur : %Green%%DriversDrive%%White%
dism /image:W:\ /add-driver /driver:%DriversDrive%:\Drivers\%Model% /recurse /forceunsigned
) else (
echo Il n'y a pas de pilote pour ce modele
ping -4 -n 3 "">nul
)

exit /b

:_r
cls & echo Redemarrer le PC
wpeutil reboot
exit

:_s
cls & echo Eteindre le PC
wpeutil shutdown
exit

:_a
cls & color 5f
echo.
echo Application de l'image automatique
echo.
echo Le dossier "Images" est sur le lecteur : %Green%%ImagesDrive%%White%
echo.
echo Suppression du disque et creation des volumes vierges
set DiskF=0

if %Firmware%==0x1 call :_diskB
if %Firmware%==0x2 call :_diskU

diskpart /s diskpart.txt
echo.
echo Application de l'image
if exist %ImagesDrive%:\Images\install.swm (dism /apply-image /imagefile:%ImagesDrive%:\Images\install.swm /swmfile:%ImagesDrive%:\Images\install*.swm /Index:1 /applydir:W:\) else (dism /apply-image /imagefile:%ImagesDrive%:\Images\install.wim /Index:1 /applydir:W:\)

if %Firmware%==0x1 bcdboot W:\Windows /s W:
if %Firmware%==0x2 bcdboot W:\Windows

if exist "W:\Windows\Panther\unattend.xml" (powershell -ExecutionPolicy Bypass -File "renamexml.ps1")
ping -4 -n 5 "">nul

call :_3
del diskpart.txt renamexml.ps1
goto _s

:_q
cls & color 0f
cmd