Freigeben über


IDebugComPlusSymbolProvider::GetSymAttribute

Ruft die Debugsymbole mit dem angegebenen übergeordneten Attribut für das angegebene Modul ab.

Syntax

int GetSymAttribute (
    uint      ulAppDomainID,
    Guid      guidModule,
    int       tokParent,
    string    pstrName,
    uint      cBuffer,
    out uint  pcBuffer,
    out int[] buffer
);

Parameter

ulAppDomainID
[in] Bezeichner der Anwendung Standard.

guidModule
[in] Eindeutiger Bezeichner des Moduls.

tokParent
[in] Token für das übergeordnete Attribut.

pstrName
[in] Name des Moduls.

cBuffer
[in] Anzahl der für die Ausgabe buffererforderlichen Bytes.

pcBuffer
[out] Länge der Ausgabe buffer.

buffer
[out] Array, das die Symbole enthält.

Rückgabewert

Wenn die Ausführung erfolgreich ist, wird S_OK, andernfalls ein Fehlercode zurückgegeben.

Beispiel

Das folgende Beispiel zeigt, wie Sie diese Methode für ein CDebugSymbolProvider -Objekt implementieren, das die IDebugComPlusSymbolProvider-Schnittstelle verfügbar macht.

HRESULT CDebugSymbolProvider::GetSymAttribute(
    ULONG32 ulAppDomainID,
    GUID guidModule,
    _mdToken tokParent,
    __in_z LPOLESTR pstrName,
    ULONG32 cBuffer,
    ULONG32 *pcBuffer,
    BYTE buffer[])
{
    HRESULT hr = S_OK;
    CComPtr<CModule> pModule;
    Module_ID idModule(ulAppDomainID, guidModule);

    METHOD_ENTRY( CDebugSymbolProvider::GetSymAttribute );

    IfFailGo( GetModule( idModule, &pModule) );

    IfFailGo( pModule->GetSymAttribute( tokParent, pstrName, cBuffer, pcBuffer, buffer ) );

Error:

    METHOD_EXIT(CDebugSymbolProvider::GetSymAttribute, hr);

    return hr;
}

Siehe auch