IWMDMStorage3::SetMetadata-Methode (mswmdm.h)
Die SetMetadata-Methode legt Metadaten für den Speicher fest.
Syntax
HRESULT SetMetadata(
[in] IWMDMMetaData *pMetadata
);
Parameter
[in] pMetadata
Ein IWMDMMetaData-Zeiger , der Metadaten enthält, die für das Objekt festgelegt werden sollen. Um diese Schnittstelle zu erstellen, rufen Sie CreateEmptyMetadataObject auf.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Alle Schnittstellenmethoden in Windows Media Geräte-Manager können eine der folgenden Klassen von Fehlercodes zurückgeben:
- Com-Standardfehlercodes
- In HRESULT-Werte konvertierte Windows-Fehlercodes
- Windows Media Geräte-Manager Fehlercodes
Hinweise
Vorhandene Eigenschaften im Speicher mit demselben Namen werden überschrieben. Alle anderen vorhandenen Eigenschaften werden nicht geändert oder verloren.
Um Eigenschaften für ein WPD-Gerät (Windows Portable Devices) festzulegen, erstellt eine Anwendung ein IPortableDeviceValues-Objekt und legt jede Eigenschaft in dieser Auflistung fest. Anschließend würde die Anwendung die Auflistung in ein binary large object (BLOB) serialisieren. Sobald die Daten serialisiert sind, fügt die Anwendung sie dem IWMDMMetaData hinzu, auf den das pMetadata-Argument mit der g_wszWPDPassthroughPropertyValues Metadatenkonstante verweist.
Beispiele
Der folgende C++-Code fügt einen Untertitel als Metadaten zu einem Speicher (pStorage3) mithilfe der IWMDMMetaData-Schnittstelle hinzu, die zuvor aus dem Speicher abgerufen wurde (nicht angezeigt).
// Set metadata values on a storage.
WCHAR* station = L"Mysubtitle";
UINT numBytes = (wcslen(station) + 1) * sizeof(WCHAR); // WCHAR string is 2 * length of characters long
// plus the terminating null character.
hr = pMetadata->AddItem(WMDM_TYPE_STRING, g_wszWMDMMediaStationName, (BYTE*)station, numBytes) ;
BREAK_HR(hr, "Added a metadata value to the interface in TestUpdateMetadata.", "Couldn't add a metadata value to the interface in TestUpdateMetadata.");
// Add the metadata to the storage.
hr = pStorage3->SetMetadata(pMetadata);
BREAK_HR(hr, "Set metadata on the storage in TestUpdateMetadata.", "Couldn't set metadata on the storage in TestUpdateMetadata: " << hex << hr << dec);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | mswmdm.h |
Bibliothek | Mssachlp.lib |