Hallo zusammen,
leider gibt es schon wieder ein Problem. Obwohl ich schon 3 unterschiedliche Ansätze versucht habe eine XML zu erstellen, lässt sich mit keiner Methode das gewünschte Ergebnis erzielen. Aktuell versuche ich es über ein xDocument. Das ist einfach und lässt sich soweit korrekt erstellen. Aber wie ändert man dann die Werte?
Die beiden Methoden auf die Werte zuzugreifen stammen aus dem Internet aus Beispielen. Leider funktioniert keine davon (man soll auf gleichem Weg dann auch schreiben können). Weil ich nihct ganz sicher war, ob das Wurzelelement "Task" mit aufgeführt sein muss, wurde es mit und ohne versucht. Was mache ich da falsch?
Als weitere Möglichkeit sollte die XML einfach als Text gespeichert werden. Der Taskplaner beschwert sich dann aber über falsche Codierung. Ich weiss nicht wie man einen Text als UTF16 codiert speichert.
3. Variante war das Erstellen der einzelnen Knotenpunkte und hinzufügen als Child usw. Dabei fügt mir VB aber überall den Namespace xmlns="" hinzu. Das mag der Taskplaner auch wieder nicht.
Kann mir da einer weiterhelfen?
GRuß
eddi
leider gibt es schon wieder ein Problem. Obwohl ich schon 3 unterschiedliche Ansätze versucht habe eine XML zu erstellen, lässt sich mit keiner Methode das gewünschte Ergebnis erzielen. Aktuell versuche ich es über ein xDocument. Das ist einfach und lässt sich soweit korrekt erstellen. Aber wie ändert man dann die Werte?
VB.NET-Quellcode
- Dim xmlstring As XDocument = <?xml version='1.0' encoding='utf-16'?>
- <Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
- <Triggers>
- <TimeTrigger>
- <StartBoundary>2019-05-30T14:44:44</StartBoundary>
- <Enabled>true</Enabled>
- </TimeTrigger>
- </Triggers>
- <Principals>
- <Principal id="Author">
- <LogonType>InteractiveToken</LogonType>
- <RunLevel>LeastPrivilege</RunLevel>
- </Principal>
- </Principals>
- <Settings>
- <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
- <AllowStartOnDemand>true</AllowStartOnDemand>
- <Enabled>true</Enabled>
- <WakeToRun></WakeToRun>
- <Priority>7</Priority>
- </Settings>
- <Actions Context="Author">
- <Exec>
- <Command></Command>
- <Arguments></Arguments>
- </Exec>
- </Actions>
- </Task>
- Console.WriteLine("jetzt: " & xmlstring.<Task>.<Triggers>.<TimeTriggers>.@StartBoundary)
- Console.WriteLine("jetzt: " & xmlstring.<Triggers>.<TimeTriggers>.@StartBoundary)
- Console.WriteLine("jetzt: " & xmlstring.<Task>.<Triggers>.<TimeTriggers>.<StartBoundary>.Value)
- Console.WriteLine("jetzt: " & xmlstring.<Triggers>.<TimeTriggers>.<StartBoundary>.Value)
- xmlstring.<Task>.<Triggers>.<TimeTriggers>.@StartBoundary = "2019-05-30T14:00:00"
- xmlstring.Save("xDoc_schreiben_Utf16.xml")
Die beiden Methoden auf die Werte zuzugreifen stammen aus dem Internet aus Beispielen. Leider funktioniert keine davon (man soll auf gleichem Weg dann auch schreiben können). Weil ich nihct ganz sicher war, ob das Wurzelelement "Task" mit aufgeführt sein muss, wurde es mit und ohne versucht. Was mache ich da falsch?
Als weitere Möglichkeit sollte die XML einfach als Text gespeichert werden. Der Taskplaner beschwert sich dann aber über falsche Codierung. Ich weiss nicht wie man einen Text als UTF16 codiert speichert.
3. Variante war das Erstellen der einzelnen Knotenpunkte und hinzufügen als Child usw. Dabei fügt mir VB aber überall den Namespace xmlns="" hinzu. Das mag der Taskplaner auch wieder nicht.
Kann mir da einer weiterhelfen?
GRuß
eddi