Ich möchte Powershell 2.0 verwenden, um die Erstellung eines Anwendungsmanifests mithilfe von Manifest Generation and Editing (Magier) von Microsoft zu erstellen. Insbesondere würde ich gerne in der Lage sein, dynamisch spezifizierte Parameterwerte an den mage-Befehl zu übergeben (z. B. von xml oder einer anderen Quelle gelesen).Rufen Sie Magier mit PowerShell 2.0 auf und rufen Sie den Operator auf (d. H. &)
Obwohl ich dies mit invoke-expression erreichen kann, möchte ich vermeiden, dass es als eine weniger sichere Option betrachtet wird (d. H. Anfällig für "Powershell-Injection-Angriffe").
Hier ist, was ich weiß.
Dies gelingt mit der Meldung „application.exe.manifest erfolgreich erstellt“:
& "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\mage.exe" -New Application
Dies gelingt nicht mit der Meldung „Das erste Argument eine der folgenden sein: -Neu, -Update, -Sign“(das ist ein Magier, nicht Powershell, Fehlermeldung):
$params = "-New Application"
& "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\mage.exe" $params
Wie kann ich den $ params Wert auf den Magier Befehl übergeben, damit es erfolgreich interpretiert Magier?
Wirklich "PowerShell Injektion Angriffe", komm schon. Welche Art von PowerShell-Verwaltungsskripten schreiben Sie, die von einem anderen Administrator ausgeführt werden? –