共用方式為


IDiaSession::findChildrenExByVA

擷取符合名稱和符號類型之指定父標識碼的所有子系,包括優化的局部變數、包含或最接近指定虛擬位址 (VA) 的局部變數。

語法

HRESULT findChildrenExByVA (
   IDiaSymbol*       parent,
   SymTagEnum        symtag,
   LPCOLESTR         name,
   DWORD             compareFlags,
   ULONGLONG         va,
   IDiaEnumSymbols** ppResult
);

參數

parent

[in] 代表父代的 IDiaSymbol 的物件。 如果這個父符號是函式、模組或區塊,則會在 ppResult 中傳回其語彙子系。 如果父符號是類型,則會傳回其類別子系。 如果此參數是 NULL,則必須將 symtag 設定為 SymTagExeSymTagNull,而會傳回全域範圍 (.exe 檔案)。

symtag

[in] 指定要擷取之子系的符號標籤。 值取自 SymTagEnum 列舉 列舉。 設定為 SymTagNull 以擷取所有子系。

name

[in] 指定要擷取之子系的名稱。 為要擷取的所有子系設定為 NULL

compareFlags

[in] 指定適用於名稱比對的比較選項。 NameSearchOptions列舉列舉中的值可以單獨或結合使用。

va

[in] 指定虛擬位址。

ppResult

[out]傳 IDiaEnumSymbols 回 物件,其中包含擷取的子符號清單。

傳回值

如果成功,則會傳回 S_OK;否則,會傳回錯誤碼。

範例

下列範例示範如何尋找符合虛擬位址 名稱szVarName之函pFunc式的局部變數va

IDiaEnumSymbols* pEnum;
pSession->findChildrenExByVA( pFunc, SymTagData, szVarName, nsCaseSensitive, va, &pEnum );

另請參閱