Compartir a través de


Cómo utilizar el módulo Appx en un host netfx distinto de powershell.exe

El Módulo PowerShell de Appx ha sido reorientado a netstandard2.0 para asegurar que se alinea con el futuro de .netcore mientras sigue soportando .netfx. El resultado de esta redestinación es un cambio importante que significa que los cmdlets del módulo PS de Appx (cuando se ejecutan en un runtime de netfx) no funcionarán cuando se ejecuten desde procesos que no sean powershell.exe.

Hay dos maneras de mitigar este cambio para utilizar el módulo Appx en un host netfx que no sea powershell.exe.

Opción 1: Cada proceso (que no sea powershell.exe) que desee utilizar los cmdlets del módulo PS de Appx en un entorno de runtime de netfx tendrá que añadir los 4 ensamblados de runtime siguientes a una ubicación accesible para ese proceso. Normalmente, esto se haría mediante la colocación de estos cuatro ensamblados en runtime junto al archivo *.exe del proceso.

  • System.Memory.dll (4.0.1.0, netstd, v2.0)
  • System.Numerics.Vectors.dll (4.1.4.0, netstd, v2.0)
  • System.Runtime.CompilerServices.Unsafe.dll (4.0.4.0, netfx, v4.0)
  • System.Security.Principal.Windows.dll (4.1.1.0, netfx, v4.0)

Estos cuatro ensamblados en runtime se pueden encontrar en sus respectivos paquetes NuGet (versión 4.5.0).

Opción 2: Redestine el entorno de runtime del proceso en netcore desde netfx.