Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wstępnie ładuje moduły wyznaczone przez określonego dostawcę symboli.
Składnia
Parametry
pSym
[in] Dostawca symboli, dla którego moduły zostaną wstępnie załadowane.
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość S_OK; w przeciwnym razie zwraca kod błędu.
Uwagi
Ta opcjonalna metoda jest używana podczas dołączania procesu hostingu. Daje EE szansę "rozgrzewki" w ramach dołączenia.
Przykład
W poniższym przykładzie pokazano, jak zaimplementować tę metodę dla obiektu ExpressionEvaluatorPackage , który uwidacznia interfejs IDebugExpressionEvaluator2 .
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;
}