IDiaSession::getEnumTables
기호 저장소에 포함된 모든 테이블에 대한 열거자를 검색합니다.
구문
HRESULT getEnumTables (
IDiaEnumTables** ppEnumTables
);
매개 변수
ppEnumTables
[out] IDiaEnumTables 개체를 반환합니다. 이 인터페이스를 사용하여 기호 저장소의 테이블을 열거합니다.
Return Value
성공하면 S_OK
를 반환하고, 실패하면 오류 코드를 반환합니다.
예시
이 예제에서는 getEnumTables
메서드를 사용하여 특정 열거자 개체를 가져오는 일반 함수를 보여 줍니다. 열거자가 있는 경우 함수는 원하는 인터페이스로 캐스팅할 수 있는 포인터를 반환합니다. 열거자가 없으면 함수는 NULL
을 반환합니다.
IUnknown *GetTable(IDiaSession *pSession, REFIID iid)
{
IUnknown *pUnknown = NULL;
if (pSession != NULL)
{
CComPtr<IDiaEnumTables> pEnumTables;
if (pSession->getEnumTables(&pEnumTables) == S_OK)
{
CComPtr<IDiaTable> pTable;
DWORD celt = 0;
while(pEnumTables->Next(1,&pTable,&celt) == S_OK &&
celt == 1)
{
if (pTable->QueryInterface(iid, (void **)pUnknown) == S_OK)
{
break;
}
pTable = NULL;
}
}
}
return(pUnknown);
}
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기