Megosztás:


IDiaDataSourceEx2::findNamedStreams

Lekéri az adatforráson belüli nevesített streamek nevét, amelyek megfelelnek az opcionálisan megadott mintának.

Szintaxis

HRESULT findNamedStreams ( 
   [in, optional] LPCOLESTR              name,
   [in]           DWORD                  compareFlags,
   [out]          IDiaEnumNamedStreams** ppResult
);

Paraméterek

[in, optional] name

Opcionálisan megadja a lekérendő streamek nevét. Állítsa NULL az összes lekérendő streamhez.

[in] compareFlags

Megadja a névegyeztetésre alkalmazott összehasonlítási beállításokat. A NameSearchOptions Enumerálási enumerálás értékei önállóan vagy kombinálva használhatók. Ha nameNULL, ennek a paraméternek nsNonekell lennie.

[out] ppResult

Egy IDiaEnumNamedStreams objektumot ad vissza, amely tartalmazza a lekért elnevezett streamek listáját.

Visszaadott érték

Ha sikeres, S_OK; ellenkező esetben egy hibakódot ad vissza.

Példa

Az alábbi példa bemutatja, hogyan keresheti meg az összes elnevezett streamet, amelyek "sourcelink" kezdődnek, és hogyan lehet kivenni azok hosszát.

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

Lásd még: