IDiaDataSourceEx2::findNamedStreams
Recupera todos los nombres de secuencias con nombre dentro del origen de datos que coinciden con el patrón especificado opcionalmente.
Sintaxis
HRESULT findNamedStreams (
[in, optional] LPCOLESTR name,
[in] DWORD compareFlags,
[out] IDiaEnumNamedStreams** ppResult
);
Parámetros
[in, optional] name
Opcionalmente, especifica el nombre de las secuencias que se van a recuperar. Establézcalo en NULL
para que se recuperen todas las secuencias.
[in] compareFlags
Especifica las opciones de comparación aplicadas a la coincidencia de nombres. Los valores de la enumeración NameSearchOptions
enumeración se pueden usar solo o en combinación. Si name
es NULL
, este parámetro debe ser nsNone
.
[out] ppResult
Devuelve un objeto IDiaEnumNamedStreams
que contiene la lista de secuencias con nombre recuperadas.
Valor devuelto
Si se ejecuta correctamente, devuelve S_OK
; de lo contrario, devuelve un código de error.
Ejemplo
En el ejemplo siguiente se muestra cómo buscar todas las secuencias con nombre que comienzan por "sourcelink"
y volcar su longitud.
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);