Freigeben über


IKsPropertySet::Get-Methode

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die Get-Methode ruft eine Eigenschaft ab, die durch eine Eigenschaftensatz-GUID und eine Eigenschafts-ID identifiziert wird.

Syntax

HRESULT Get(
  [in]  REFGUID guidPropSet,
  [in]  DWORD   dwPropID,
  [in]  LPVOID  pInstanceData,
  [in]  DWORD   cbInstanceData,
  [out] LPVOID  pPropData,
  [in]  DWORD   cbPropData,
  [out] DWORD   *pcbReturned
);

Parameter

guidPropSet [in]

Die GUID des Eigenschaftssatzes .

dwPropID [in]

Der Bezeichner der Eigenschaft innerhalb des Eigenschaftensatzes.

pInstanceData [in]

Ein Zeiger auf ein Array von Bytes, das instance Daten für die Eigenschaft enthält.

cbInstanceData [in]

Die Größe des Arrays in pInstanceData in Bytes.

pPropData [out]

Ein Zeiger auf ein Array von Bytes, das die Eigenschaftendaten empfängt.

cbPropData [in]

Die Größe des Arrays in pPropData in Bytes.

pcbReturned [out]

Empfängt die Anzahl von Bytes, die die Methode in das pPropData-Array kopiert.

Rückgabewert

Gibt einen HRESULT-Wert zurück. Die folgenden Werte sind möglich.

Rückgabecode BESCHREIBUNG
S_OK
Erfolg.
E_PROP_SET_UNSUPPORTED
Der Eigenschaftensatz wird nicht unterstützt.
E_PROP_ID_UNSUPPORTED
Die Eigenschafts-ID wird für den angegebenen Eigenschaftensatz nicht unterstützt.

 

Bemerkungen

Hinweis

Eine weitere Schnittstelle mit diesem Namen ist in der Headerdatei dsound.h vorhanden. Die beiden Schnittstellen sind nicht kompatibel. Die IKsControl-Schnittstelle , die im DirectShow DDK dokumentiert ist, ist jetzt die empfohlene Schnittstelle zum Übergeben von Eigenschaftssätzen zwischen WDM-Treibern und Benutzermoduskomponenten.

 

Um eine Eigenschaft abzurufen, weisen Sie einen Puffer zu, den diese Methode dann ausfüllt. Um die erforderliche Puffergröße zu bestimmen, geben Sie NULL für pPropData und null (0) für cbPropData an. Diese Methode gibt die erforderliche Puffergröße in pcbReturned zurück.

Sie müssen Ks.h vor Ksproxy.h einschließen.

Beispiele

Im folgenden Beispiel wird eine Pin nach der pin-Kategorie abfragt, indem die eigenschaft AMPROPERTY_PIN_CATEGORY abgerufen wird. (Siehe Pin Property Set.)

HRESULT GetPinCategory(IPin *pPin, GUID *pPinCategory)
{
    IKsPropertySet *pKs = NULL;

    HRESULT hr = pPin->QueryInterface(IID_PPV_ARGS(&pKs));
    if (FAILED(hr))
    {
        return hr;
    }

    // Try to retrieve the pin category.
    DWORD cbReturned = 0;
    hr = pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0, 
        pPinCategory, sizeof(GUID), &cbReturned);
    
    // If this succeeded, pPinCategory now contains the category GUID.

    SafeRelease(&pKs);
    return hr;
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Ksproxy.h
Bibliothek
Strmiids.lib

Siehe auch

Fehler- und Erfolgscodes

IKsPropertySet-Schnittstelle

Eigenschaftensätze