XML-Node mit Powershell-Variablen befüllen
Hallo zusammen,
eine Software soll auf X Rechner verteilt werden, in der dazugehörigen XML-Datei sollen der Hostname soll als "Instanz" verwendet werden und der FQDN ist für das Zertifikat relevant.
Für Beide Werte ziehe ich die Infos aus dem Ziel-System und bilde die Variablen.
Beim setzen der der Werte in der XML-Datei bekomme allerdings Fehlermeldungen da hier nur Text eingefügt werden darf:
XML-Datei:
Powershell-Skript:
Fehlermeldung: Siehe Bild
Wenn ich statt der Variablen einen Text angebe funktioniert das.
Wie kann ich die Variablen in den Nodes der XML schreiben, kann ich evtl. Variablen in den Nodes definieren und diese mit mit den Variablen aus Powershell befüllen?
Danke im Voraus
eine Software soll auf X Rechner verteilt werden, in der dazugehörigen XML-Datei sollen der Hostname soll als "Instanz" verwendet werden und der FQDN ist für das Zertifikat relevant.
Für Beide Werte ziehe ich die Infos aus dem Ziel-System und bilde die Variablen.
Beim setzen der der Werte in der XML-Datei bekomme allerdings Fehlermeldungen da hier nur Text eingefügt werden darf:
XML-Datei:
<?xml version="1.0" encoding="utf-8"?>
<SoftwareSettings>
<Instances>
<Instance>
<Name>**HOSTNAME**</Name>
<HttpServer>
<Endpoints>
<Endpoint IsHttps="false">
<Certificate Subject=**"Hostname.mydomain.de"**>
</Endpoint>
</Endpoints>
</HttpServer>
</Instance>
</Instances>
</Softwaresettings>
Powershell-Skript:
$path = 'C:\MeineSoftware\MeinesoftwareSettings.xml'
$Hostname = $(HostName)
$FQDN = "$Hostnae.mydomain.de"
$xml = [xml](Get-Content $path)
$Node = $xml.PersoDruSettings.Instances.Instance
$node.Name = $Hostname
$xml.Save($path)
Fehlermeldung: Siehe Bild
Wenn ich statt der Variablen einen Text angebe funktioniert das.
Wie kann ich die Variablen in den Nodes der XML schreiben, kann ich evtl. Variablen in den Nodes definieren und diese mit mit den Variablen aus Powershell befüllen?
Danke im Voraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 11473663511
Url: https://administrator.de/contentid/11473663511
Ausgedruckt am: 17.11.2024 um 15:11 Uhr
2 Kommentare
Neuester Kommentar
Tippfehler, Knotenname stimmt nicht, etc ...
Sid.
$path = 'C:\MeineSoftware\MeinesoftwareSettings.xml'
[string]$Hostname = $env:Computername
[string]$FQDN = "$Hostname.mydomain.de"
$xml = New-Object XML
$xml.Load($path)
$node = $xml.SoftwareSettings.Instances.Instance
$node.Name = $Hostname
$node.HttpServer.Endpoints.Endpoint.Certificate.Subject = $FQDN
$xml.Save($path)