Packaged Powershell - Get-Content funktioniert nicht mit iexpress

celiko
Goto Top
Hallo Administratoren,

ich habe ein powershell script geschrieben, das Zertifikate importiert und ein VPN-Profil erstellt.

Die Installation beinhaltet:
CreateVPN.ps1
EAP.xml (config für VPN)
Zertifikat 1 (trusted publisher)
Zertifikat 2 (intermediate)

Jetzt versuche ich diese Dateien über iexpress in eine .exe zu verpacken, sodass das Script nur über eine .exe ausgeführt werden soll (geht an Externe).

Da ich noch keine Erfahrungen mit .exe-Dateien habe und ich im Internet bislang nichts hilfreiches gefunden habe frage ich euch mal :D

Mein Problem:
Das Script weiß nicht, wo er die Zertifikate oder die .xml findet. Ich habe bei den Pfaden .\[FILENAME] eingetragen.
Ich habe bereits versucht die set-location umzudefinieren aber ohne Erfolg.

Wisst ihr, wie man aus einer .exe auf die gepackten Dateien zugreift und über das Script bearbeiten kann?

Wäre super wenn ihr Ratschläge geben könntet face-smile

MfG
Celikoo

Content-Key: 666606

Url: https://administrator.de/contentid/666606

Ausgedruckt am: 03.07.2022 um 13:07 Uhr

Mitglied: 148121
Lösung 148121 10.05.2021 aktualisiert um 17:31:15 Uhr
Goto Top
Moin.
Iexpress packt die Files ja im Hintergrund nur als ZIP mit EXE-Wrapper zusammen. Wenn du es ausführst dann entpackt die EXE die Files erst mal in ein temporäres Verzeichnis und führt dann dort den angegebenen Befehl aus. Wenn du also aus dem Skript heraus auf weitere Dateien die im selben Verzeichnis liegen wie das Skript selbst, zugreifen willst, nimmst du einfach das Verzeichnis das immer in der globalen Variablen $psscriptroot steht als Referenz.
Also bspw.
<Code>
Get-Content "$psscriptroot\EAP.xml"
</code>

Gruß w.
Mitglied: Celiko
Celiko 10.05.2021 um 17:37:42 Uhr
Goto Top
Hey warranty,

mir ist auch gerade aufgefallen, dass die .exe mit dem Befehl "powershell.exe -ExecutionPolicy Bypass -File "CreateVPN.ps1" bzw ".\CreateVPN.ps1" nicht klar kommt.
Es erscheint kurz ein Powershell Fenster aber die Powershell macht nichts.
Evtl. eine Idee was hier falsch sein könnte? Vermute wieder nur etwas kleines...

Über die Powershell Konsole funktioniert es ohne Probleme.

Den Eintrag für den Get-Content habe ich angepasst und testweise als Gesamtheit in einen anderen Ordner verschoben. Danke dafür! Funktioniert zumindest über die Powershell Konsole.

VG
Celikoo
Mitglied: Celiko
Celiko 10.05.2021 um 18:10:37 Uhr
Goto Top
Nachtrag:
Ich musste lediglich die Checkbox ankreuzen: "Store files using Long File Name inside Package"
Danke @148121 für deine erneute Hilfe face-smile

Schönen Feierabend.

VG Celiko