Freigeben über


IDebugExpressionEvaluator2::PreloadModules

Stellt die vom angegebenen Symbolanbieter festgelegten Module vor.

Syntax

int PreloadModules (
    IDebugSymbolProvider pSym
);

Parameter

pSym
[in] Symbolanbieter, für den die Module vorinstalliert werden.

Rückgabewert

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

Hinweise

Diese optionale Methode wird verwendet, wenn Sie eine Hostingprozessanfügung durchführen. Es gibt dem EE die Möglichkeit, sich im Rahmen des Anfügens "aufzuwärmen".

Beispiel

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

STDMETHODIMP ExpressionEvaluatorPackage::PreloadModules
(
    IDebugSymbolProvider *pSym
)
{
    HRESULT hr = NOERROR;
    RuntimeMemberDescriptor  * prtMemberDesc;
    RuntimeClassDescriptor *prtClassDesc;
    CComPtr<IDebugClassField> pClassField;
    IfFalseGo(pSym,E_INVALIDARG);

    prtMemberDesc = &(g_rgRTLangMembers[StandardModuleAttributeCtor]);
    prtClassDesc = &(g_rgRTLangClasses[prtMemberDesc->rtParent]);
    pSym->GetClassTypeByName(prtClassDesc->wszClassName, nmCaseSensitive, &pClassField);

    pClassField = NULL;
    prtMemberDesc = &(g_rgRTLangMembers[LoadAssembly]);
    prtClassDesc = &(g_rgRTLangClasses[prtMemberDesc->rtParent]);
    pSym->GetClassTypeByName(prtClassDesc->wszClassName, nmCaseSensitive, &pClassField);

Error:
    return hr;
}

Weitere Informationen