osdgap
Goto Top

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:
<?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
bildschirmfoto 2023-10-23 um 11.05.25

Content-ID: 11473663511

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

Ausgedruckt am: 17.11.2024 um 15:11 Uhr

7907292512
Lösung 7907292512 23.10.2023 aktualisiert um 11:47:26 Uhr
Goto Top
Tippfehler, Knotenname stimmt nicht, etc ...
$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) 
Sid.
osdgap
osdgap 23.10.2023 um 11:46:58 Uhr
Goto Top
Tatsächlich ist das alles adhoc und neu und natürlich super dringend, es hat geklappt, vielen Dank für die Unterstützung

VG