IMDSPStorage4::CreateStorageWithMetadata-Methode (mswmdm.h)
Die CreateStorageWithMetadata-Methode erstellt einen neuen Speicher, wendet die angegebenen Metadaten auf den neuen Speicher an und gibt einen Zeiger auf die IMDSPStorage-Schnittstelle im neu erstellten Speicher zurück. Der neue Speicher kann auf derselben Ebene erstellt oder in den aktuellen Speicher eingefügt werden.
Diese Methode ist nützlich, wenn das Gerät zur Erstellungszeit Metadaten benötigt. Je nach Gerät kann es auch effizienter sein, Metadaten zur Erstellungszeit anzuwenden, anstatt den Speicher zu erstellen und dann Metadaten festzulegen.
Syntax
HRESULT CreateStorageWithMetadata(
[in] DWORD dwAttributes,
[in] LPCWSTR pwszName,
[in] IWMDMMetaData *pMetadata,
[in] ULONGLONG qwFileSize,
[out] IMDSPStorage **ppNewStorage
);
Parameter
[in] dwAttributes
DWORD mit Attributen für den neuen Speicher. In der folgenden Tabelle sind die verfügbaren Speicherattribute aufgeführt.
attribute | BESCHREIBUNG |
---|---|
WMDM_STORAGECONTROL_INSERTBEFORE | Das neue Speicherobjekt wird vor dem Zielobjekt erstellt. |
WMDM_STORAGECONTROL_INSERTAFTER | Das neue Speicherobjekt wird nach dem Zielobjekt erstellt. |
WMDM_STORAGECONTROL_INSERTINTO | Das neue Speicherobjekt wird im Zielobjektordner erstellt. |
WMDM_STORAGECONTROL_OVERWRITE | Wenn Speicher mit demselben Namen bereits vorhanden ist, wird er gelöscht und ein neuer Speicher erstellt. |
WMDM_STORAGE_ATTR_FILESYSTEM | Dieses Objekt ist das Speichermedium der obersten Ebene (z. B. ein Speicher Karte oder ein anderer onboarder Speicher).) |
WMDM_STORAGE_ATTR_REMOVABLE | Dieses Speichermedium kann entfernt werden. |
WMDM_STORAGE_ATTR_CANEDITMETADATA | Dieser Speicher kann Metadaten bearbeiten. |
WMDM_STORAGE_ATTR_FOLDERS | Dieses Speichermedium unterstützt Ordner und Dateihierarchie. |
WMDM_FILE_ATTR_FOLDER | Dies ist ein Ordner auf dem Speichermedium. |
WMDM_FILE_ATTR_LINK | Dies ist ein Link, der eine Zuordnung zwischen mehreren Dateien erstellt. |
WMDM_FILE_ATTR_FILE | Dies ist eine Datei auf dem Speichermedium. |
WMDM_FILE_ATTR_AUDIO | Bei dieser Datei handelt es sich um Audiodaten. |
WMDM_FILE_ATTR_DATA | Bei dieser Datei handelt es sich um Nicht-Audiodaten. |
WMDM_FILE_ATTR_CANPLAY | Diese Audiodatei kann vom Gerät wiedergegeben werden. |
WMDM_FILE_ATTR_CANDELETE | Diese Datei kann gelöscht werden. |
WMDM_FILE_ATTR_CANMOVE | Diese Datei oder dieser Ordner kann auf dem Speichermedium verschoben werden. |
WMDM_FILE_ATTR_CANRENAME | Diese Datei oder dieser Ordner kann umbenannt werden. |
WMDM_FILE_ATTR_CANREAD | Diese Datei kann vom Hostcomputer gelesen werden. |
WMDM_FILE_ATTR_MUSIC | Diese Audiodatei ist Musik. |
WMDM_FILE_ATTR_PLAYLIST | Dies ist ein Wiedergabelistenobjekt. |
WMDM_FILE_ATTR_VIDEO | Diese Datei enthält Videodaten. |
WMDM_FILE_ATTR_HIDDEN | Diese Datei ist im Dateisystem ausgeblendet. |
WMDM_FILE_ATTR_SYSTEM | Dies ist eine Systemdatei. |
WMDM_FILE_ATTR_READONLY | Dies ist eine schreibgeschützte Datei. |
WMDM_STORAGE_IS_DEFAULT | Dieser Speicher ist der Standardspeicher, in dem neue Medien platziert werden sollen. |
WMDM_STORAGE_CONTAINS_DEFAULT | Dieser Speicher enthält den Standardspeicher, in dem neue Medien platziert werden sollen. |
[in] pwszName
Zeiger auf eine Breitzeichenzeichenfolge mit NULL-Beendigung, die einen Namen für den neuen Speicher enthält.
[in] pMetadata
Zeiger auf eine IWMDMMetaData-Schnittstelle .
[in] qwFileSize
Qword , das die Dateigröße enthält.
[out] ppNewStorage
Zeiger auf einen IMDSPStorage-Zeiger , um die IMDSPStorage-Schnittstelle für den neu erstellten Speicher zu empfangen.
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
Diese Methode ist nützlich, wenn Metadaten zum Zeitpunkt der Erstellung auf den Speicher angewendet werden müssen. Im Gegensatz dazu bieten die Methoden IMDSPStorage2::CreateStorage2 und IMDSPStorage::CreateStorage keine Möglichkeit, Metadaten zur Erstellungszeit bereitzustellen.
Wenn der Dienstanbieter für ein Gerät, das mit Windows Medienwiedergabe synchronisieren kann, diese Schnittstelle unterstützt, ruft Windows Media Geräte-Manager diese Methode während Insert/2/3-Vorgängen auf.
Wenn sowohl die Attribute WMDM_FILE_ATTR_FOLDER als auch WMDM_FILE_ATTR_FILE festgelegt sind, überschreibt das ordner-Attribut das Dateiattribute, und der neue Speicher wird als Ordner erstellt.
Nur eine der WMDM_STORAGECONTROL_INSERTBEFORE, WMDM_STORAGECONTROL_INSERTAFTER und WMDM_STORAGECONTROL_INSERTINTO kann vom Client angegeben werden.
Der neue Speicher kann auf derselben Ebene erstellt oder in den aktuellen Speicher eingefügt werden, vorausgesetzt, der aktuelle Speicher ist ein Ordner. Dies wird durch den Wert des dwAttributes-Parameters gesteuert. Wenn WMDM_STORAGECONTROL_INSERTBEFORE oder WMDM_STORAGECONTROL_INSERTAFTER angegeben wird, wird der neue Speicher auf der gleichen Ebene wie der aktuelle Speicher erstellt. Wenn WMDM_STORAGECONTROL_INSERTINTO angegeben wird, wird der neue Speicher in den aktuellen Speicher eingefügt.
WMDM_STORAGECONTROL_INSERTBEFORE und WMDM_STORAGECONTROL_INSERAFTER implizieren eine Reihenfolge der Inhalte im Dateisystem. Wenn das Dateisystem die Reihenfolge nicht unterstützt (z. B. das FAT32-Dateisystem), haben beide Flags den gleichen Effekt, dass der neue Speicher auf der Ebene des aktuellen Speichers eingefügt wird. Wenn der aktuelle Speicher den Stamm des Speichermediums darstellt und eines dieser beiden Flags angegeben ist, schlägt der Vorgang fehl.
WMDM_STORAGECONTROL_INSERTINTO ist nur gültig, wenn der aktuelle Speicher ein Ordner ist. Wenn der aktuelle Speicher eine Datei ist und dieses Flag angegeben ist, schlägt der Vorgang fehl.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | mswmdm.h |
Bibliothek | Mssachlp.lib |
Weitere Informationen
Aktivieren der Synchronisierung mit Windows Medienwiedergabe