Comment utiliser le module Appx dans un hôte netfx autre que powershell.exe
Le module Appx PowerShell a été réorienté vers netstandard2.0 afin de s’assurer qu’il s’aligne sur l’avenir de .netcore tout en continuant à prendre en charge .netfx. Le résultat de ce reciblage est un changement cassant qui signifie que les applets de commande du module Appx PS (lors de l’exécution sous un runtime netfx) ne fonctionnent pas lors de l’exécution à partir de processus autres que powershell.exe.
Il existe deux façons d’atténuer cette modification pour utiliser le module Appx dans un hôte netfx autre que powershell.exe.
Option 1 : chaque processus (autre que powershell.exe) qui souhaite utiliser les applets de commande du module Appx PS dans un environnement d’exécution netfx doit ajouter les 4 assemblys d’exécution suivants à un emplacement accessible à ce processus. En règle générale, vous devez placer ces quatre assemblys d’exécution en regard du fichier exécutable du processus.
- 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)
Ces quatre assemblys runtime sont disponibles dans leurs packages NuGet respectifs (version 4.5.0).
Option 2 : reciblage de l’environnement d’exécution du processus vers netcore à partir de netfx.