Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft ein Bytearray ab, das einem Schlüssel zugeordnet ist. Diese Methode kopiert das Array in einen vom Aufrufer zugewiesenen Puffer.
Syntax
HRESULT GetBlob(
[in] REFGUID guidKey,
[out] UINT8 *pBuf,
[in] UINT32 cbBufSize,
[out] UINT32 *pcbBlobSize
);
Die Parameter
[in] guidKey
GUID, die den abzurufenden Wert identifiziert. Der Attributtyp muss MF_ATTRIBUTE_BLOB werden.
[out] pBuf
Zeiger auf einen vom Aufrufer zugewiesenen Puffer. Wenn der Schlüssel gefunden wird und der Wert ein Bytearray ist, kopiert die Methode das Array in diesen Puffer. Um die erforderliche Größe des Puffers zu finden, rufen Sie IMFAttributes::GetBlobSize auf.
[in] cbBufSize
Die Größe des pBuf-Puffers in Byte.
[out] pcbBlobSize
Empfängt die Größe des Bytearrays. Dieser Parameter kann NULL-sein.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliche Werte sind die Werte in der folgenden Tabelle, sind jedoch nicht beschränkt.
| Rückgabecode | Description |
|---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Der Puffer ist nicht groß genug für das Array. |
|
Der angegebene Schlüssel wurde nicht gefunden. |
|
Der Attributwert ist kein Bytearray. |
Bemerkungen
Sie können auch die IMFAttributes::GetAllocatedBlob-Methode verwenden, die den Puffer zum Speichern des Bytearrays zuweist.
Diese Schnittstelle ist auf den folgenden Plattformen verfügbar, wenn die verteilbaren Komponenten des Windows Media Format 11 SDK installiert sind:
- Windows XP mit Service Pack 2 (SP2) und höher.
- Windows XP Media Center Edition 2005 mit KB900325 (Windows XP Media Center Edition 2005) und KB925766 (Updaterollup vom Oktober 2006 für Windows XP Media Center Edition) installiert.
Examples
Das folgende Codebeispiel zeigt, wie Ein Attribut abgerufen wird, dessen Wert ein Bytearray ist.
HRESULT AttributeGetBlob(IMFAttributes *pAttributes)
{
HRESULT hr = S_OK;
UINT32 cbBlob = 0;
BYTE *pBlob = NULL;
hr = pAttributes->GetBlobSize(MY_ATTRIBUTE, &cbBlob);
if (SUCCEEDED(hr))
{
pBlob = new BYTE[cbBlob];
if (pBlob == NULL)
{
hr = E_OUTOFMEMORY;
}
}
if (SUCCEEDED(hr))
{
hr = pAttributes->GetBlob(MY_ATTRIBUTE, pBlob, cbBlob, &cbBlob);
}
if (pBlob)
{
delete [] pBlob;
}
return hr;
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Mindestens unterstützter Client | Windows Vista [Desktop-Apps | UWP-Apps] |
| Mindestanforderungen für unterstützte Server | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
| Zielplattform | Fenster |
| Header | mfobjects.h (include Mfidl.h) |
| Library | Mfuuid.lib |