IModelObject::EnumerateKeyValues-Methode (dbgmodel.h)
Die EnumerateKeyValues-Methode ist die erste Methode, die ein Client verwendet, um alle Schlüssel für ein Objekt aufzulisten (dies schließt alle Schlüssel ein, die überall in der Struktur übergeordneter Modelle implementiert sind). Es ist wichtig zu beachten, dass EnumerateKeyValues alle Schlüssel aufzählt, die durch doppelte Namen in der Objektstruktur definiert sind. -- Methoden wie GetKeyValue und SetKeyValue bearbeiten jedoch nur die erste instance eines Schlüssels mit dem angegebenen Namen, wie vom Tiefen-First-Traversal ermittelt.
Syntax
HRESULT EnumerateKeyValues(
IKeyEnumerator **enumerator
);
Parameter
enumerator
Ein Enumerator für alle Schlüssel im Objekt (und alle übergeordneten Modelle) und deren Werte und Metadaten wird in diesem Argument als IKeyEnumerator zurückgegeben.
Rückgabewert
Diese Methode gibt HRESULT zurück, das auf Erfolg oder Fehler hinweist.
Hinweise
Codebeispiel
ComPtr<IModelObject> spObject; /* get the object you want to enumerate */
ComPtr<IKeyEnumerator> spEnum;
if (SUCCEEDED(spObject->EnumerateKeyValues(&spEnum)))
{
HRESULT hr = S_OK;
while (SUCCEEDED(hr))
{
BSTR keyName;
ComPtr<IModelObject> spKeyValue;
hr = spEnum->GetNext(&keyName, &spKeyValue, nullptr);
if (SUCCEEDED(hr))
{
// keyName contains the name of the key
// spKeyValue contains the value of the key
SysFreeString(keyName);
}
}
// hr == E_BOUNDS : We hit the end of the enumerator
// hr == E_ABORT : User is requesting interruption of the
// operation / stop immediately and flow the error
}
Anforderungen
Anforderung | Wert |
---|---|
Header | dbgmodel.h |