Le filtre d'écriture amélioré est également fourni avec Windows Embedded Standard 7. Cependant, il n'inclut pas le mode disque connu des versions antérieures de Embedded . Le mode disque permettait d'enregistrer toutes les modifications sur un disque dur séparé.
Il existe une autre approche pour créer un scénario similaire au mode disque d'EWFs : vous pouvez utiliser des VHD.
Étant donné que Windows 7 et WES7 prennent en charge le démarrage à partir de VHD (disques durs virtuels), vous pouvez utiliser la fonction de VHD différentiel.
Cette fonction vous permet de créer un fichier VHD principal contenant le système d'exploitation dans l'état où il doit rester et un VHD différentiel qui stocke toutes les modifications apportées à l'image principale pendant l'exécution.
Par exemple, vous pouvez avoir votre fichier VHD principal sur un Compact Flash et le fichier différentiel sur un disque dur pour rediriger toutes les écritures hors du support flash.
L'une des fonctionnalités d'EWF est de supprimer toutes les modifications apportées à l'image à chaque redémarrage.
La solution consiste à créer un nouveau fichier VHD différentiel avec le master comme parent et à utiliser le nouveau VHD comme entrée de démarrage par défaut.
Après un redémarrage, le système retrouve son état d'origine.
Remise à zéro du différentiel VHD
Pour automatiser ce processus, vous pouvez utiliser le fichier batch suivant. Veuillez adapter les chemins d'accès à l'emplacement de votre VHD dans la section "Variables". Jetez un coup d'œil ci-dessous pour l'installation du fichier batch.
Comment cela fonctionne-t-il ?
Le système fonctionne avec 2 fichiers VHD différentiels qui seront échangés à chaque démarrage.
À chaque démarrage, le fichier batch vérifie quel VHD différentiel est actif.
Il supprime alors le VHD différentiel non actif et recrée le VHD non actif.
Toutes les modifications précédentes sont ainsi annulées. Ensuite, le fichier batch définit le nouveau VHD non actif comme nouveau périphérique de démarrage par défaut.
Au prochain démarrage, le système démarrera à partir du VHD fraîchement créé.
Fichier par lots
@echo off
echo VHD Diff Resetter créé par Wolfgang UngerREM #########################
REM Variables
REM #########################
set VHD_Drive=D :
set VHD_Parent=wes7.vhd
set VHD_DiffFile1=wes7diff1.vhd
set VHD_DiffFile2=wes7diff2.vhdset TempFile=D:\diskpart.txt
REM #########################REM Essayer de supprimer le deuxième fichier diff. Si c'est le cas, l'image 1 est démarrée.
del %VHD_Drive%\%VHD_DiffFile2%
if exist "%VHD_Drive%\%VHD_DiffFile2%" goto File2del %VHD_Drive%\%VHD_DiffFile2%
echo create vdisk file=%VHD_Drive%\NVHD_DiffFile2% parent=%VHD_Drive%\NVHD_Parent% > %TempFile%
echo exit >> %TempFile%diskpart /s %TempFile%
bcdedit /set {current} device vhd=
[%VHD_Drive%]\%VHD_DiffFile2%
bcdedit /set {current} osdevice vhd=[%VHD_Drive%]\VHD_DiffFile2%GOTO Fait
:File2del %VHD_Drive%\%VHD_DiffFile1%
echo create vdisk file=%VHD_Drive%\%VHD_DiffFile1% parent=%VHD_Drive%\%VHD_Parent% > %TempFile%
echo exit >> %TempFile%diskpart /s %TempFile%
bcdedit /set {current} device vhd=[%VHD_Drive%]\N%VHD_DiffFile1%
bcdedit /set {current} osdevice vhd=[%VHD_Drive%]\N%VHD_DiffFile1%:Fait
del %TempFile%
echo Done.Installation
- Installer Windows Embedded Standard 7 sur un VHD. Vous trouverez des instructions ici.
- Amorcer l'image.
- Enregistrez le fichier batch ci-dessus dans l'image.
- Ouvrir le planificateur de tâches
- Cliquez sur "Créer une tâche..."
- Saisissez un nom pour la tâche et cochez la case "Exécuter avec les privilèges les plus élevés"
- Allez dans l'onglet "Déclencheurs" et cliquez sur "Nouveau".
- Sélectionnez "Au démarrage" dans la liste déroulante "Commencer la tâche" et cliquez sur "OK"
- Allez dans l'onglet "Actions" et cliquez sur "Nouveau".
- Recherchez le fichier batch et cliquez sur ok
- Cliquez sur OK pour enregistrer la tâche
- Exécuter le fichier batch une fois et redémarrer
Scénarios d'utilisation
Cette solution peut s'avérer utile lorsque
- l'utilisation d'un lecteur de disque flash qui contient l'image principale et toutes les modifications doivent être placées sur un disque dur
- les modifications doivent persister lors des redémarrages (pour cela, ne créez pas la tâche et n'exécutez le fichier batch qu'en cas de besoin)
- vous ne souhaitez pas utiliser EWF ou FBWF
- etc.