使用Powershell DSC包资源安装exe时,返回代码1619
我正在尝试使用Powershell DSC的软件包资源安装exe。。。Perforce的P4V需具体说明。这是我的密码:使用Powershell DSC包资源安装exe时,返回代码1619,powershell,windows-installer,p4v,dsc,Powershell,Windows Installer,P4v,Dsc,我正在尝试使用Powershell DSC的软件包资源安装exe。。。Perforce的P4V需具体说明。这是我的密码: Configuration PerforceMachine { Node "SERVERNAME" { Package P4V { Ensure = "Present" Name = "Perforce Visual Components" Path = "
Configuration PerforceMachine
{
Node "SERVERNAME"
{
Package P4V
{
Ensure = "Present"
Name = "Perforce Visual Components"
Path = "\\nas\share\p4vinst64.exe"
ProductId = ''
Arguments = "/S /V/qn" # args for silent mode
LogPath = "$env:ProgramData\p4v_install.log"
}
}
}
运行此操作时,这是Powershell给我的错误:
PowerShell provider MSFT_PackageResource failed to execute Set-TargetResource functionality with error message: The return code 1619 was not expected. Configuration is likely not
correct
+ CategoryInfo : InvalidOperation: (:) [], CimException
+ FullyQualifiedErrorId : ProviderOperationExecutionFailure
+ PSComputerName : SERVERNAME
根据,返回代码1619表示无法打开MSI包。但是,当我手动登录到计算机并运行“\\nas\share\p4vinst64.exe/S/V/qn”时,安装工作正常
有人知道为什么会失败吗?或者,有人能告诉我如何解决这个问题吗?我粘贴了从终端获得的所有错误信息,我的日志文件(p4v_install.log)是一个0字节的文件,事件查看器中没有事件。我不知道如何进一步排除故障
编辑:我应该注意,我还尝试使用文件资源在本地复制文件,然后从那里安装。遗憾的是,这得到了相同的结果。好吧,这里发生的是安装了包(尚未使用p4vinst64.exe进行测试!因此,不确定为什么它说包无法作为错误打开),但由于您没有指定
ProductID
值,安装结束时的验证失败。这就是你看到的错误。包
资源不适合安装.exe包,甚至不使用ProductID表示为GUID的MSI
您可以使用WindowsProcess
资源来代替。论坛上的Daniel能够帮我解决这个问题
如果您作为LocalSystem执行,P4V InstallShield安装包装器会将MSI文件放入错误路径
我已经成功地开发了一个有效的配置,请参见下文。这里的关键是/b开关,它将MSI文件放入定义的位置。我添加了ALLUSERS=1
以使所有用户都能看到快捷方式,并添加了REBOOT=ReallySuppress
以避免突然重启(否则会发生)
不幸的是,我没有答案给你,但我想建议你也在论坛上写下你的问题。如果你在这里没有得到答案,也许那里的人可以帮助你,你可以在这里写下你自己问题的答案。我在那里贴了同样的问题。只要我找到答案,我就会更新这两个地方!
Configuration PerforceMachine
{
Package P4V
{
Ensure = "Present"
Name = "Perforce Visual Components"
Path = "C:\My\p4vinst64.exe"
ProductId = ''
Arguments = '/b"C:\Windows\Temp\PerforceClient" /S /V"/qn ALLUSERS=1 REBOOT=ReallySuppress"' # args for silent mode
}
}