IMDSPStorage2::CreateStorage2-Methode (mswmdm.h)

Die CreateStorage2-Methode erstellt einen neuen Speicher mit dem angegebenen Namen und gibt einen Zeiger auf die IMDSPStorage-Schnittstelle im neu erstellten Speicher zurück.

Syntax

HRESULT CreateStorage2(
  [in]  DWORD            dwAttributes,
  [in]  DWORD            dwAttributesEx,
  [in]  _WAVEFORMATEX    *pAudioFormat,
  [in]  _VIDEOINFOHEADER *pVideoFormat,
  [in]  LPWSTR           pwszName,
  [in]  ULONGLONG        qwFileSize,
  [out] IMDSPStorage     **ppNewStorage
);

Parameter

[in] dwAttributes

DWORD mit den Attributen, wie in der IMDSPStorage::CreateStorage-Methode beschrieben.

[in] dwAttributesEx

DWORD mit den erweiterten Attributen. Es sind derzeit keine erweiterten Attribute definiert.

[in] pAudioFormat

Zeiger auf eine _WAVEFORMATEX Struktur, die Audioformatinformationen zum Objekt enthält. Dieser Parameter ist optional und wird ignoriert, wenn die Datei kein Audio ist.

[in] pVideoFormat

Zeiger auf eine _VIDEOINFOHEADER-Struktur , die Videoformatinformationen zum Objekt enthält. Dieser Parameter ist optional und wird ignoriert, wenn die Datei kein Video ist.

[in] pwszName

Zeiger auf eine Breitzeichen-NULL-endende Zeichenfolge, die den Namen für den neuen Speicher enthält.

[in] qwFileSize

QWORD mit der Größe der zu erstellenden Datei. Wenn die Gesamtgröße der Ausgabedatei zum Zeitpunkt der Erstellung nicht bekannt ist, wird dieser Wert auf 0 festgelegt.

[out] ppNewStorage

Zeiger auf einen IMDSPStorage-Zeiger zum Empfangen der IMDSPStorage-Schnittstelle für den neu erstellten Speicher.

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:

  • Standard-COM-Fehlercodes
  • In HRESULT-Werte konvertierte Windows-Fehlercodes
  • Windows Media Geräte-Manager Fehlercodes
Eine umfassende Liste möglicher Fehlercodes finden Sie unter Fehlercodes.

Hinweise

Wenn sowohl die Attribute WMDM_FILE_ATTR_FOLDER als auch WMDM_FILE_ATTR_FILE festgelegt sind, überschreibt das Ordnerattribute 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 derselben 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 impliziert eine Reihenfolge der Inhalte im Dateisystem. Wenn das Dateisystem die Sortierung nicht unterstützt (z. B. FAT32), haben beide Flags die gleiche Auswirkung, dass der neue Speicher auf derselben Ebene wie der aktuelle Speicher 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.

Diese Methode muss implementiert werden. Es darf keine WMDM_E_NOTSUPPORTED oder E_NOTIMPL zurückgeben. Weitere Informationen finden Sie unter Obligatorische und optionale Schnittstellen.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile mswmdm.h
Bibliothek Mssachlp.lib

Weitere Informationen

IMDSPStorage2-Schnittstelle

IMDSPStorage::CreateStorage