Add-WindowsImage

Add-WindowsImage

Adds an additional image to an existing image (.wim) file.

Syntax

Parameter Set: Default
Add-WindowsImage -CapturePath <String> -ImagePath <String> -Name <String> [-CheckIntegrity] [-ConfigFilePath <String> ] [-Description <String> ] [-LogLevel <LogLevel> ] [-LogPath <String> ] [-NoRpFix] [-ScratchDirectory <String> ] [-Setbootable] [-Verify] [-WIMBoot] [ <CommonParameters>]

Detailed Description

The Add-WindowsImage cmdlet adds an additional image to an existing image (.wim) file. Add-WindowsImage compares new files to the resources in the existing .wim file, specified by the Name parameter and the ImagePath parameter, and stores only a single copy of each unique file so that each file is only captured once. The .wim file can have only one assigned compression type. Therefore, you can only append files with the same compression type.

The Add-WindowsImage cmdlet does not apply to virtual hard disk (VHD) files.

It’s important to note that you’ll need to ensure you have enough disk space before you run Add-WindowsImage. If you run out of disk space while the image is being appended, you might corrupt the .wim file.

Parameters

-CapturePath<String>

Specifies the path to the location of the new files that will be compared to the resources in the existing .wim file.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-CheckIntegrity

Detects and tracks .wim file corruption when used with the Add—WindowsImage, Dismount-WindowsImage or Save-WindowsImage cmdlet. CheckIntegrity stops the operation if DISM detects that the .wim file is corrupted when used with the Expand-WindowsImage or Mount-WindowsImage cmdlet.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-ConfigFilePath<String>

Specifies the location of a configuration file that lists exclusions for image capture and compress commands. For more information, see DISM Configuration List and WimScrit.ini Files, https://go.microsoft.com/fwlink/?LinkID=313768.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Description<String>

Specifies the description of the image to be captured.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-ImagePath<String>

Specifies the location of the WIM file containing the Windows image you want to compare against the new files.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-LogLevel<LogLevel>

Specifies the maximum output level shown in the logs. The default log level is 3. The accepted values are as follows:1 = Errors only2 = Errors and warnings3 = Errors, warnings, and information4 = All of the information listed previously, plus debug output

Aliases

LL

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-LogPath<String>

Specifies the full path and file name to log to. If not set, the default is %WINDIR%\Logs\Dism\dism.log.In Windows PE, the default directory is the RAMDISK scratch space which can be as low as 32 MB. The log file will automatically be archived. The archived log file will be saved with .bak appended to the file name and a new log file will be generated. Each time the log file is archived the .bak file will be overwritten. When using a network share that is not joined to a domain, use the net use command together with domain credentials to set access permissions before you set the log path for the DISM log.

Aliases

LP

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Name<String>

Specifies the name of an image in a WIM file.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-NoRpFix

Disables the reparse point tag fix. A reparse point is a file that contains a link to another file on the file system. If the parameter is not specified, reparse points that resolve to paths outside of the value specified by the ImagePath parameter will not be captured.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-ScratchDirectory<String>

Specifies a temporary directory that will be used when extracting files for use during servicing. The directory must exist locally. If not specified, the \Windows\%Temp% directory will be used, with a subdirectory name of a randomly generated hexadecimal value for each run of DISM. Items in the scratch directory are deleted after each operation. You should not use a network share location as a scratch directory to expand a package (.cab or .msu file) for installation. The directory used for extracting files for temporary usage during servicing should be a local directory.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Setbootable

Marks a volume image as being a bootable image. This argument is available only for Windows PE images. Only one volume image can be marked as bootable in a .wim file.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Verify

Checks for errors and file duplication. During an apply operation, for example, using the Add-WindowsImage cmdlet, the size and the hash of the file being applied are checked against the image file to verify they are both equal. During a capture operation, for example, when using the New-WindowsImage cmdlet, after the files is captured into a Windows image, the file is written to a temporary file and compared on a bit-by-bit basis with the original file.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-WIMBoot

Specifies that the offline image to be added will be formatted to install on a Windows Image Format Boot (WIMBoot) system.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • System.String[]
  • Microsoft.Dism.Commands.ImageObject
  • Microsoft.Dism.Commands.ImageObjectWithState

Outputs

The output type is the type of the objects that the cmdlet emits.

  • Microsoft.Dism.Commands.OfflineImageObject

Examples

Example 1

This command adds files from d:\”Drive D” to the existing image at c:\imagestore\custom.wim

PS C:\> Add-WindowsImage -ImagePath c:\imagestore\custom.wim -CapturePath d:\ -Name "Drive D"

Dismount-WindowsImage

Expand-WindowsImage

Export-WindowsImage

Get-WindowsImage

Mount-WindowsImage

New-WindowsImage

Remove-WindowsImage

Repair-WindowsImage

Save-WindowsImage

Split-WindowsImage