< Back
Install-MSIProduct
Post
NAME Install-MSIProduct
SYNOPSIS
Installs or modifies a product package.
SYNTAX
Install-MSIProduct [-Path] <String[]> [-Chain] [-Destination <String>] [-Force] [-Log <String>] [-PassThru]
[-Properties <String[]>] [-ResultVariable <String>] [<CommonParameters>]
Install-MSIProduct [-Chain] [-Destination <String>] [-Force] -LiteralPath <String[]> [-Log <String>] [-PassThru]
[-Properties <String[]>] [-ResultVariable <String>] [<CommonParameters>]
Install-MSIProduct [-Chain] [-Force] [-Log <String>] [-PassThru] -Product <ProductInstallation[]> [-Properties
<String[]>] [-ResultVariable <String>] [<CommonParameters>]
Install-MSIProduct [-Chain] [-Force] [-Log <String>] [-PassThru] -ProductCode <String[]> [-Properties <String[]>]
[-ResultVariable <String>] [<CommonParameters>]
DESCRIPTION
Installs a product package or adds features to existing products.
Ultimately, this cmdlet can install, modify, repair, and even uninstall a product package or install patches but
specialized cmdlets have been added for those tasks.
Progress, warnings, and errors during the install are sent through the pipeline making this command fully
integrated.
PARAMETERS
-Chain [<SwitchParameter>]
Whether to install all packages together. If elevated, a single restore point is created for all packages in
the chain and reboots are suppressed when possible.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-Destination <String>
The target directory where the product should be installed.
Note that the product package must be authored to support installing to TARGETDIR.
Required? false
Position? named
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Force [<SwitchParameter>]
Whether to suppress all prompts.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-LiteralPath <String[]>
The path to a product package to install. The value of -LiteralPath is used exactly as typed. No characters
are interpreted as wildcards.
Required? true
Position? named
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Log <String>
The path to the log file. This use the file name as the base name and will append timestamp and
product-specific information.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-PassThru [<SwitchParameter>]
Whether to pass the newly installed product information after installation to the pipeline.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-Path <String[]>
The path to a product package to install. Wildcards are permitted. You can specify * in any part of the path
to select all matching files.
Required? true
Position? 0
Default value None
Accept pipeline input? True (ByPropertyName, ByValue)
Accept wildcard characters? true
-Product <ProductInstallation[]>
An existing product to modify.
Required? true
Position? named
Default value None
Accept pipeline input? True (ByValue)
Accept wildcard characters? false
-ProductCode <String[]>
The ProductCode of an existing product to modify.
Required? true
Position? named
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Properties <String[]>
Additional property=value pairs to pass during install.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-ResultVariable <String>
The name of a variable to store operation results. Optionally prefix with "+" to combine results with existing
results variable.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
Microsoft.Deployment.WindowsInstaller.ProductInstallation
OUTPUTS
Microsoft.Deployment.WindowsInstaller.ProductInstallation
NOTES
-------------------------- EXAMPLE 1 --------------------------
install-msiproduct .\\example.msi NOBLOCK=1
Installs the example.msi product package passing the ficticious NOBLOCK=1 property.
-------------------------- EXAMPLE 2 --------------------------
get-msiproductinfo -name TEST | install-msiproduct ADDLOCAL=Addin -log $env:TEMP\\install.log
Modifies the existing product with ProductName TEST to add the "Addin" feature locally and log to the TEMP
directory.
RELATED LINKS
Install-MSIPatch
Repair-MSIProduct
Uninstall-MSIPatch
Uninstall-MSIProduct
SYNOPSIS
Installs or modifies a product package.
SYNTAX
Install-MSIProduct [-Path] <String[]> [-Chain] [-Destination <String>] [-Force] [-Log <String>] [-PassThru]
[-Properties <String[]>] [-ResultVariable <String>] [<CommonParameters>]
Install-MSIProduct [-Chain] [-Destination <String>] [-Force] -LiteralPath <String[]> [-Log <String>] [-PassThru]
[-Properties <String[]>] [-ResultVariable <String>] [<CommonParameters>]
Install-MSIProduct [-Chain] [-Force] [-Log <String>] [-PassThru] -Product <ProductInstallation[]> [-Properties
<String[]>] [-ResultVariable <String>] [<CommonParameters>]
Install-MSIProduct [-Chain] [-Force] [-Log <String>] [-PassThru] -ProductCode <String[]> [-Properties <String[]>]
[-ResultVariable <String>] [<CommonParameters>]
DESCRIPTION
Installs a product package or adds features to existing products.
Ultimately, this cmdlet can install, modify, repair, and even uninstall a product package or install patches but
specialized cmdlets have been added for those tasks.
Progress, warnings, and errors during the install are sent through the pipeline making this command fully
integrated.
PARAMETERS
-Chain [<SwitchParameter>]
Whether to install all packages together. If elevated, a single restore point is created for all packages in
the chain and reboots are suppressed when possible.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-Destination <String>
The target directory where the product should be installed.
Note that the product package must be authored to support installing to TARGETDIR.
Required? false
Position? named
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Force [<SwitchParameter>]
Whether to suppress all prompts.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-LiteralPath <String[]>
The path to a product package to install. The value of -LiteralPath is used exactly as typed. No characters
are interpreted as wildcards.
Required? true
Position? named
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Log <String>
The path to the log file. This use the file name as the base name and will append timestamp and
product-specific information.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-PassThru [<SwitchParameter>]
Whether to pass the newly installed product information after installation to the pipeline.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-Path <String[]>
The path to a product package to install. Wildcards are permitted. You can specify * in any part of the path
to select all matching files.
Required? true
Position? 0
Default value None
Accept pipeline input? True (ByPropertyName, ByValue)
Accept wildcard characters? true
-Product <ProductInstallation[]>
An existing product to modify.
Required? true
Position? named
Default value None
Accept pipeline input? True (ByValue)
Accept wildcard characters? false
-ProductCode <String[]>
The ProductCode of an existing product to modify.
Required? true
Position? named
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Properties <String[]>
Additional property=value pairs to pass during install.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-ResultVariable <String>
The name of a variable to store operation results. Optionally prefix with "+" to combine results with existing
results variable.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
Microsoft.Deployment.WindowsInstaller.ProductInstallation
OUTPUTS
Microsoft.Deployment.WindowsInstaller.ProductInstallation
NOTES
-------------------------- EXAMPLE 1 --------------------------
install-msiproduct .\\example.msi NOBLOCK=1
Installs the example.msi product package passing the ficticious NOBLOCK=1 property.
-------------------------- EXAMPLE 2 --------------------------
get-msiproductinfo -name TEST | install-msiproduct ADDLOCAL=Addin -log $env:TEMP\\install.log
Modifies the existing product with ProductName TEST to add the "Addin" feature locally and log to the TEMP
directory.
RELATED LINKS
Install-MSIPatch
Repair-MSIProduct
Uninstall-MSIPatch
Uninstall-MSIProduct