IDebugHostModule2::FindTypeByName-Methode (dbgmodel.h)
Die FindTypeByName-Methode findet einen Typ, der innerhalb des Moduls durch den Typnamen definiert ist, und gibt ein Typsymbol dafür zurück. Diese Methode kann eine gültige IDebugHostType- zurückgeben, die niemals über explizite Rekursion von untergeordneten Elementen des Moduls zurückgegeben werden würde. Der Debughost kann die Erstellung von abgeleiteten Typen ermöglichen – Typen, die nicht jemals innerhalb des Moduls selbst verwendet werden, sondern von Typen abgeleitet sind. Wenn die Struktur "MyStruct" beispielsweise in den Symbolen des Moduls definiert ist, der Typ "MyStruct **" jedoch nie verwendet wird, gibt die FindTypeByName-Methode möglicherweise legitimerweise ein Typsymbol für MyStruct ** zurück, obwohl dieser Typname nie explizit in den Symbolen für das Modul angezeigt wird.
Viele Debughosts versuchen explizit, den Typnamen zu kontextualisieren, der an die FindTypeByName-Methode übergeben wird, und einen übereinstimmenden Typ innerhalb der symbolischen Informationen gemäß den Regeln der Sprache und keinen unformatierten Vergleich mit Symbolnamen zu finden. Wenn ein Debughost dies nicht ausführen kann, wird er auf den unformatierten Vergleich mit Symbolnamen zurückfallen.
Syntax
HRESULT FindTypeByName(
PCWSTR typeName,
IDebugHostType **type
);
Parameter
typeName
Der Sprachtyp, der in den symbolischen Informationen für das Modul zu finden ist. Der Typ kann auch von (z. B.: einem Zeiger auf oder einem Array von) abgeleitet werden, einem Typ, der in den symbolischen Informationen des Moduls zu finden ist.
type
Hier wird ein Typsymbol für den gefundenen Typ zurückgegeben.
Rückgabewert
Diese Methode gibt HRESULT zurück, das Erfolg oder Fehler angibt.
Bemerkungen
Beispielcode-
ComPtr<IDebugHostModule> spModule; /* get a module (see FindModuleByName) */
// Find "MyStruct **". Note that only "MyStruct" might be in the symbols
ComPtr<IDebugHostType> spType;
if (SUCCEEDED(spModule->FindTypeByName(L"MyStruct **", &spType)))
{
// spType contains a type symbol for "MyStruct **"
}
Anforderungen
Anforderung | Wert |
---|---|
Header- | dbgmodel.h |