Compartir vía


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);

Consulte también