La instalación de un archivo ejecutable con el recurso del paquete Powershell DSC obtiene el código de retorno 1619

StackOverflow https://stackoverflow.com//questions/24004455

Pregunta

Estoy intentando utilizar el recurso Paquete de Powershell DSC para instalar un archivo ejecutable...El P4V de Perforce para ser específico.Aquí está mi código:

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"
        }
    }
}

Al ejecutar esto, este es el error que me da 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

De acuerdo a documentación, el código de retorno 1619 significa que no se pudo abrir el paquete MSI.Sin embargo, cuando inicio sesión manualmente en la máquina y ejecuto "\ as\share\p4vinst64.exe /S /V/qn", la instalación funciona perfectamente.

¿Alguien sabe por qué esto está fallando?Alternativamente, ¿alguien puede decirme cómo solucionar este problema?Pegué toda la información de error que obtuve del terminal, mi archivo de registro (p4v_install.log) es un archivo de 0 bytes y no hay eventos en el visor de eventos.¡Ya no sé cómo solucionarlo!

EDITAR:Debo tener en cuenta que también intenté usar el recurso Archivo para copiar el archivo localmente y luego instalarlo desde allí.Lamentablemente, eso tuvo el mismo resultado.

¿Fue útil?

Solución

Daniel sobre el PowerShell.org Forums pudo resolver esto para mí.

La envoltura de configuración de P4V InstallShield coloca el archivo MSI en la ruta incorrecta si se ejecuta como Localsistema .

He logrado desarrollar una configuración que funcione, vea a continuación.La clave es el interruptor de / b aquí que pone el archivo MSI en una ubicación definida.He agregado ALLUSERS=1 para obtener los accesos directos visibles para todos los usuarios y REBOOT=ReallySuppress para evitar un reinicio repentino (que sucederá de otra manera).

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
    }
} 

Otros consejos

Bueno, lo que sucede aquí es que el paquete se instala (¡aún no se ha probado con p4vinst64.exe!Entonces, no estoy seguro de por qué dice que el paquete no se puede abrir como error), pero como no especificó un ProductID valor, la verificación al final de la instalación falla.Ese es el error que estás viendo.El Package El recurso no es bueno para instalar paquetes .exe o incluso MSI sin ProductID representado como GUID.

Puedes usar el WindowsProcess recurso en su lugar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top