ITcSmTreeItem::ConsumeXml

Die ConsumeXml()-Methode verwendet ein BSTR, der eine XML-Darstellung mit elementspezifischen Daten und aktualisierten Parametern enthält. Diese Methode wird für die Änderung von Elementparametern verwendet, die nicht direkt über die ITcSmTreeItem-Schnittstelle zugänglich sind.

HRESULT ConsumeXml(BSTRbstrXML); 

Parameter

bstrXML

[in] Zeichenkette mit der XML-Darstellung der elementspezifischen Parameter

Rückgabewerte

S_OK

Funktion hat Wert erfolgreich zurückgegeben.

E_FAIL

die bstrXML Zeichenkette enthält kein gültiges XML-Dokument.

Kommentare

Dieses Dokument kann nur die spezifischen Parameter enthalten, die zu verändern sind. Die Dokumentstruktur muss dem elementspezifischen XML-Baum entsprechen, die nicht zu verändernden Parameter können ausgelassen werden. Das folgende Dokument stellt ein kleinstmögliches Beispiel dar, das für die Änderung des spezifischen Parameters CheckNumberBoxes des Elements verwendet werden kann (in diesem Falle eine C1220 Feldbuskarte). Wenn die im Dokument enthaltenen Parameter dem Element nicht bekannt sind, werden sie ignoriert.

<TreeItem><DeviceDef><DevC1220Def><CheckNumberBoxes>0</CheckNumberBoxes></DevC1220Def></DeviceDef></TreeItem>

Der Parametersatz eines spezifischen Tree Items wird im XML-Schemadokument definiert, das mit TwinCAT geliefert wird. Der Parameter eines spezifischen Elements kann auch mittels Aufruf der ITcSmTreeItem::ProduceXML-Methode ausgewertet werden. Die sich daraus ergebende XML-Zeichenkette enthält alle Parameter dieses Elements, aber nicht alle können verändert werden. Die XML-Zeichenkette kann eine beliebige Anzahl XML-Elemente, in beliebiger hierarchischer Ordnung, enthalten, die den Anforderungen des XML-Schemas entsprechen. Es ist zulässig, nur einen Parameter auf einmal zu ändern (wie im Beispiel oben), einen Parametersatz auf einmal zu ändern oder den vollständigen Paramtersatz zu liefern, den ITcSmTreeItem::ProduceXML zurückgibt (normalerweise mit den gleichen geänderten Parametern).

Es gibt einige spezielle XML-Elemente, die keinem Parameter entsprechen, und die eine Funktion „;ausführen“;. Ein Beispiel ist das <Rescan>-Element eines SPS-Projekttree items. Die Zeichenkette:

<TreeItem><PlcDef><ReScan>1</ReScan></PlcDef></TreeItem>

als Parameter von ConsumeXml veranlasst den System Manager unter TwinCAT 2 das SPS-Projekt erneut zu scannen (wie ein manuell veranlasstes erneutes Scannen mittels Drücken der "Rescan" Taste auf einem SPS-Projekt). Die verfügbaren Parameter und Funktionen werden in der XML-Schemadatei dokumentiert.

Siehe auch

ITcSmTreeItem::ProduceXML