Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Извлекает все имена именованных потоков в источнике данных, которые соответствуют необязательно заданному шаблону.
Синтаксис
HRESULT findNamedStreams (
[in, optional] LPCOLESTR name,
[in] DWORD compareFlags,
[out] IDiaEnumNamedStreams** ppResult
);
Параметры
[in, optional] name
При необходимости указывает имя извлекаемых потоков. Установите значение NULL
для получения всех потоков.
[in] compareFlags
Указывает параметры сравнения, применяемые к сопоставлению имен. Значения из перечисления NameSearchOptions
можно использовать отдельно или в сочетании. Если name
NULL
, этот параметр должен быть nsNone
.
[out] ppResult
Возвращает объект IDiaEnumNamedStreams
, содержащий список полученных именованных потоков.
Возвращаемое значение
В случае успешного выполнения возвращается S_OK
; в противном случае возвращает код ошибки.
Пример
В следующем примере показано, как найти все именованные потоки, начинающиеся с "sourcelink"
и дампа их длины.
CComPtr<IDiaEnumNamedStreams> pEnum;
HRESULT hr = pDataSource->findNamedStreams( L"sourcelink*", nsCaseSensitive | nsRegularExpression, &pEnum );
do {
CComBSTR name;
hr = pEnum->Next(&name);
if (FAILED(hr)) {
// report the error
return hr;
}
if (hr != S_OK) {
// End of the matches
return S_OK;
}
ULONGLONG cb = 0;
hr = pDataSource->getStreamSize(name.m_str, &cb);
if (FAILED(hr)) {
// report the error
return hr;
}
printf("Stream Name: \"%ls\", Stream Size: %llu byte(s)\n", name.m_str, cb);
} while (true);
См. также
- Обзор
IDiaEnumNamedSstreams
IDiaDataSourceEx2
-
перечисления
NameSearchOptions
IDiaDataSourceEx::getStreamSize