ITcSmTreeItem::CreateChild
Erzeugt ein untergeordnetes Tree Item auf einem untergeordneten Knoten. Das untergeordnete Element wird dabei durch seinen Subtyp spezifiziert.
Das folgende Beispiel erläutert dieses Verhalten genauer.
In diesem Beispiel wird einem EtherCAT-Master-Gerät (Gerät 1) in TwinCAT XAE ein EK1100-Koppler hinzugefügt. Im TwinCAT Automation Interface könnte dies mit der CreateChild()-Methode durchgeführt werden. Der übergeordnete Knoten (Gerät 1 EtherCAT) ist vom Typ '2' (TREEITEMTYPE_DEVICE). Der Subtyp spezifiziert das untergeordnete Tree Item und so auch den EK1100, der vom Subtyp '9099' (BOXTYPE_EXXXXX) ist.
Parameter
bstrName | [in] Elementname des neuen untergeordneten Tree Item. |
nSubtype: | [in] Subtyp des neuen untergeordneten Tree Items. Der verwendbare Subtyp hängt ab vom Tree Item Type (der Kategorie) des übergeordneten ´Tree Items . So kann z.B. ein SPS-Funktionsblock nur dem Elementtyp PLCFOLDER, und nicht einem DEVICE, hinzugefügt werden. |
bstrBefore | [in, defaultvalue("")] Wenn gesetzt, enthält der Parameter den Namen eines anderen untergeordneten Tree Items, vor dem das neue Element einzufügen ist. |
vInfo | [in, optional] Ein optionaler Parameter mit zusätzlichen Informationen für die Erstellung , welche abhängt vom Subtypen. Die verschiedenen Abhängigkeiten werden in der Tabelle unten aufgelistet. |
pipItem | [out, retval] Zeigt auf den Speicherort eines ITcSmTreeItem-Schnittstellenzeigers, der das Ergebnis erhält. |
Rückgabewerte
|
S_OK |
Funktion hat Wert erfolgreich zurückgegeben. |
|
E_POINTER |
die Adresse des Rückgabezeigers ist ungültig |
|
TSM_E_INVALIDITEMSUBTYPE (0x98510003) |
der angegebene Subtyp ist ungültig. |
|
TSM_E_ITEMNOTFOUND (0x98510001) |
Das Element bstrBefore wurde nicht gefunden. |
Optionaler vInfo Parameter
Abhängig vom Element-Sub typ des neuen untergeordneten Tree Items, bestimmte Zusatzinformationen sind möglicherweise erforderlich für die Erstellung des untergeordneten Tree Items. Diese Information kann über den vInfo-Parameter geliefert werden.
|
Untergeordnetes Element: Element-Subtyp |
vInfo-Parameter |
|---|---|
|
E-Bus Box / Klemme / Modul (Element-Subtyp 9099) |
Enthält das Identity-Objekt (CoE 1018h, VendorId, ProductCode und optional RevisionNo und SerialNo) der EtherCAT Box. Der Typ der Variante muss ein Array von LONG (VT_I4|VT_ARRAY, 2-4 Elemente) sein. Enthält alternativ einen BSTR im folgenden Format (wobei %X = Wert in hexadezimaler Notation, z.B. "V00000002_P044c2c52_R00000000"): |
|
Interbus-Box. (Element-Subtyp 2002) |
Enthält den IdentCode und LengthCode der Interbus-Box. Der Typ der Variante muss ein vorzeichenloses Short (VT_I2) sein, wobei das Low-Byte den IdentCode und das High-Byte den LengthCode enthält. |
|
AX2000 (Element-Subtyp 5007) |
Enthält optional einen boolschen Wert (VT_BOOL) und wenn er gesetzt ist, wird eine zusätzliche Variable für den “Schleppfehler” erzeugt. |
|
DeviceNET (Element-Subtyp 5203) |
Enthält optional den Dateipfad einer EDS-Datei (VT_BSTR). |
|
BK3000 und alle übrigen PROFIBUS-Box-Typen |
Enthält optional den Dateipfad einer GSD-Datei (VT_BSTR). |
|
Variable |
Enthält optional die Bit-Adresse der neuen Variablen. Der Typ der Variante kann ein SHORT oder ein LONG (VT_I2 oder VT_I4) sein. |
|
SPS-POU Funktionsblock (Element-Subtyp 604) |
Enthält IEC-Sprachentyp als Integer, wie durch IECLANGUAGETYPES definiert. |
|
SPS-POU Funktion (Element-Subtyp 603) |
Enthält ein string[2]-Array, das folgende Werte hält:
|