IDebugExpressionEvaluator2::PreloadModules
Pré-carrega os módulos designados pelo provedor de símbolo especificado.
HRESULT PreloadModules (
IDebugSymbolProvider* pSym
);
int PreloadModules (
IDebugSymbolProvider pSym
);
Parâmetros
- pSym
[in] Provedor de símbolo para o qual os módulos serão pré-carregadas.
Valor de retorno
Se bem-sucedida, retorna S_OK; Caso contrário, retorna um código de erro.
Comentários
Esse método opcional é usado quando você fizer a anexar um processo de hospedagem. Ele dá a EE uma chance de ' aquecida ' como parte do attach.
Exemplo
O exemplo a seguir mostra como implementar este método para um ExpressionEvaluatorPackage objeto que expõe a IDebugExpressionEvaluator2 interface.
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;
}