Freigeben über


IContextNode::GetId-Methode

Ruft den Bezeichner für das IContextNode-Objekt ab.

Syntax

HRESULT GetId(
  [out] GUID *pId
);

Parameter

pId [out]

Der Bezeichner für das IContextNode-Objekt .

Rückgabewert

Eine Beschreibung der Rückgabewerte finden Sie unter Klassen und Schnittstellen – Freihandanalyse.

Bemerkungen

Der Freihandanalysator weist allen von ihm erstellten Kontextknoten einen eindeutigen Bezeichner zu. Während der Freihandanalyse kann das Freihandanalysetool den Bezeichner für einen Kontextknoten ändern. Beispielsweise kann die Freihandanalyse einen Wortknoten als zwei Wortknoten neu klassifizieren und dann den ursprünglichen Bezeichner dem einen und dem anderen einen neuen Bezeichner zuweisen. Oder das Freihandanalysetool kann zwei Wortknoten als einen Wortknoten neu klassifizieren und dem neuen Wortknoten einen der ursprünglichen Bezeichner zuweisen.

Beispiele

Das folgende Beispiel zeigt eine Hilfsmethode, die Informationen zu einem angegebenen Knoten, dem pContextNode-Parameter, abruft . Diese Hilfsmethode gibt Informationen aus den folgenden Methoden zurück.

// Helper method for collecting information about a context node.
HRESULT CMyClass::GetNodeInformation(
    IContextNode *pContextNode,
    GUID *pNodeIdentifier,
    GUID *pContextNodeType,
    IAnalysisRegion **ppAnalysisRegion,
    IContextNode **ppParentNode,
    IContextNodes **ppSubNodes)
{
    // Get the identifier of the context node.
    HRESULT hr = pContextNode->GetId(pNodeIdentifier);

    if (FAILED(hr))
    {
        return hr;
    }

    // Get the type identifier for the context node.
    hr = pContextNode->GetType(pContextNodeType);

    if (FAILED(hr))
    {
        return hr;
    }

    // Get the location of the context node.
    hr = pContextNode->GetLocation(ppAnalysisRegion);

    if (FAILED(hr))
    {
        return hr;
    }

    // Get the parent node of the context node.
    hr = pContextNode->GetParentNode(ppParentNode);

    if (FAILED(hr))
    {
        if ((*ppAnalysisRegion) != NULL)
        {
            (*ppAnalysisRegion)->Release();
            (*ppAnalysisRegion) = NULL;
        }
        return hr;
    }

    // Get the subnodes of the context node.
    hr = pContextNode->GetSubNodes(ppSubNodes);

    if (FAILED(hr))
    {
        if (*ppAnalysisRegion)
        {
            (*ppAnalysisRegion)->Release();
            (*ppAnalysisRegion) = NULL;
        }
        if (*ppParentNode)
        {
            (*ppParentNode)->Release();
            (*ppParentNode) = NULL;
        }
        return hr;
    }

    return hr;
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows XP Tablet PC Edition [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Nicht unterstützt
Header
IACom.h (erfordert auch IACom_i.c)
DLL
IACom.dll

Siehe auch

IContextNode

Freihandanalysereferenz