dism.exe

Tool zur Imageverwaltung für die Bereitstellung

Capture einer Installation#

Nach dem man die Installation mit sysprep.exe vorbereitet hat, booten man in eine WinPE-Umgebung und kann von dort das ein /capture-image anstoßen.

Dism /capture-image /imagefile:D:\install-win10.wim /CaptureDir:C:\ /Name:"Custom Windows 10 Image"

Der Speicherort des /imagefile solle nach dem Herunterfahren der WinPE weiterhin erreichbar sein. Man nehme beispielweise einen USB-Stick oder mountet ein Netzlaufwerk.

WinPE#

Zum Booten empfehle ich Venoty und als WinPE-Umgebung PhoenixPE.

Apply einer Installation#

Hat man mit /Capture-Image ein Abbild aufgenommen, kann man es mit /Apply-Image direkt (ohne Erstellen einer ISO) auf eine Partition anwenden.

dism /Apply-Image /ImageFile:E:\imagefiles\W7.wim /Index:1 /ApplyDir:C:\

Gibt es hier die Meldung Der angegebene Pfadname ist ungültig. muss man ein chkdsk auf Quelle/Ziel anwenden.

Get-WimInfo#

In einem WimFile können mehrere Windows-Versionen sein. Z.B.: Home aber auch Pro. Diesen werden durch einen Index gekennzeichnet.

dism /Get-WimInfo /WimFile:C:\Win7_Clean\install.wim

Es werden nun die verschiedenen Windows-Versionen inklusive Größe und Index ausgegeben.

image1.wim mounten#

Um Dateien einer wim-Datei hinzuzufügen oder eine ISO daraus zu erstellen, ist es nötig diese zu mounten.

dism /Mount-Wim /WimFile:"C:\Werkstatt_Service_Rechner\install.wim" /index:1 /MountDir:C:\mount

Die Windows-Installation ist nun unter C:\mount verfügbar.

Nach Abschluss der Arbeiten am Image, kann man wie folgt unmounten:

dism /Unmount-Wim /MountDir:C:\mount /Commit

Features Offline hinzufügen#

Möchte man Features direkt nach der Installation verfügbar haben, kann man diese mit dism.exe vor der Installation dem Image hinzufügen.

Dafür benötigt man die install.wim die man unter \sources\install.wim findet. Diese hängt man nun mit folgenden Kommando ein.

dism /Mount-Wim /WimFile:"C:\W10_WST_1\install.wim" /index:1 /MountDir:C:\mount

Danach kann man sich erstmal alle Features anzeigen lassen.

DISM /Image:c:\mount /Get-Features /Format:Table

Möchte man bspw. .NET 3.5 aktiviert haben, führt man nun folgendes Kommando aus.

dism /Image:C:\mount /Enable-Feature /FeatureName:NetFx3 /All /Source:C:\Win10_22H2_German_x64v1\sources\sxs /LimitAccess

Als Source braucht man die Installationsquellen. Diese findet man in einer Windows-ISO unter \sources\sxs.

Nun kann man das Feature an sich nochmal abfragen, um sicherzugehen, dass es dem Image korrekt hinzugefügt worden ist.

dism /Image:C:\mount /Get-FeatureInfo /FeatureName:NetFx3

Zum Ende der Arbeiten an der install.wim muss man sie unmounten.

dism /Unmount-Wim /MountDir:C:\mount /Commit

Um nun eine bootfähige ISO zu erhalten, nutzt man oscdimg.exe.

Export einer Windows Version#

In der ISO die man von Microsoft herunterlädt, sind zahlreiche verschiedene Windows Versionen enthalten. Um ein Wim-File mit der einzigen gewollten Version zu erhalten, kann man diese Exportieren.

dism /Export-Image /SourceImageFile:"D:\sources\install.wim" /SourceIndex:2 /DestinationImageFile:"D:\sources\install_clean.wim" /Compress:max /CheckIntegrity

Troubleshooting#

Error 1243#

Kann beim mounten einer install.wim auftreten. Mit diesen Registry-Einträgen kann man den Fehler lösen:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WIMMount]
"DebugFlags"=dword:00000000
"Description"="@%SystemRoot%\\system32\\drivers\\wimmount.sys,-102"
"DisplayName"="@%SystemRoot%\\system32\\drivers\\wimmount.sys,-101"
"ErrorControl"=dword:00000001
"Group"="FSFilter Infrastructure"
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
72,00,69,00,76,00,65,00,72,00,73,00,5c,00,77,00,69,00,6d,00,6d,00,6f,00,75,\
00,6e,00,74,00,2e,00,73,00,79,00,73,00,00,00
"Start"=dword:00000003
"SupportedFeatures"=dword:00000003
"Tag"=dword:00000001
"Type"=dword:00000002

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WIMMount\Instances]
"DefaultInstance"="WIMMount"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WIMMount\Instances\WIMMount]
"Altitude"="180700"
"Flags"=dword:00000000

Quelle ist dieser Artikel: https://answers.microsoft.com/en-us/windows/forum/all/solved-dismexe-error-1243-the-specified-service/836b860c-6427-40f9-9ea8-21869cd1218d

Warum das funktioniert, ist mir nicht bekannt.

Error 161#

Die Meldung dazu ist: Der angegebene Pfadname ist ungültig. Nach einen chdsk auf Quelle und Ziel funktioniert dism.exe.

chkdsk E: /f
chkdsk G: /f
dism /capture-image /imagefile:E:\image_folder\image1.wim /capturedir:G:\ /Name:"w7-important-image"