SynopsisRepairs an installed product on the local or a remote computer.
- Repair-MSIProduct [-Name] [-ComputerName] [-Credential]
DescriptionThe Repair-MSIProduct cmdlet repairs installed products on the local or a remote computer, using the local Windows MSI cache.
- Name The name of the product to repair. Names must be exact and this parameter does not accept wildcards.
- ComputerName The computer against which to run the cmdlet. By default this parameter will be populated with the name of the local computer.
- Credential The credentials under which to run the cmdlet. By default this cmdlet will run as the current user. Using this parameter and the Get-PSCredential cmdlet you can specify an alternate set of credentials under which to execute this command.
InputsRepair-MSIProduct accepts pipeline input for the Name and ComputerName parameters by property name. This cmdlet also accepts the output of the Get-MSIProduct cmdlet as an input object.
OutputsRepair-MSIProduct makes changes directly to Windows and does not output any Powershell objects.
NotesThe Repair-MSIProduct cmdlet requires that the Remote Registry and RPC services are started on the computer it is trying to access, that the WMI Windows Installer Provider is installed (it is an optional component in Windows 2003) and that DNS services are available to resolve target host names.
Example 1This command will repair the product "MyProduct V1" on the local computer:
Repair-MSIProduct -Name "MyProduct V1"
Example 2This command will repair the product "MyProduct V1" on the remote computer PC01:
Repair-MSIProduct -Name "MyProduct V1" -Computer PC01
Example 3The Get-MSIProduct cmdlet can be used in conjunction with the Repair-MSIProduct cmdlet. This command will repair any products with names starting with 'MyProduct' on the remote computer PC01:
Get-MSIProduct -Name MyProduct* -Computer PC01 | Repair-MSIProduct