什么意思是ReturnValue:win32_product安装方法的3

时间:2013-05-31 06:48:18

标签: powershell installation windows-installer wmi

我使用PowerShell和WMI在远程计算机上安装msi包,并在尝试安装时获得返回值3。这很奇怪,因为在安装之前我的脚本会检查已安装的产品,如果存在,则将其卸载。卸载成功完成。

我用google搜索安装方法的返回值3 - 但没有任何内容。

有人对此返回码有所了解吗?

感谢。

编辑:这是代码。

function InstallPJM([string]$packagePath, [string]$machineName)
{
   Write-Host “Installing from $packagePath on $machineName”

    #1   
    (Get-WMIObject -ComputerName $machineName -List | Where-Object -FilterScript {$_.Name -eq "Win32_Product"}).Install($packagePath)

    #$product = [WMICLASS]“\\$machineName\ROOT\CIMV2:win32_Product”

    #2
    #$product.Install($packagePath, "", "True")    
}

函数调用:

InstallPJM "C:\PJM7DeploymentFolder\Pjm7.msi" "MachineName"

我尝试了2种方式(编号的字符串):每种方式都给出了ReturnValue 3

1 个答案:

答案 0 :(得分:0)

在我的情况下,ReturnValue = 3是因为我从PowerShell传递了一个相对路径到MSI。在Resolve-Path中进行包装使其正常工作。

YMMV