Condividi tramite


Metodo IMDSPStorage2::CreateStorage2 (mswmdm.h)

Il metodo CreateStorage2 crea una nuova risorsa di archiviazione con il nome specificato e restituisce un puntatore all'interfaccia IMDSPStorage nella risorsa di archiviazione appena creata.

Sintassi

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

Parametri

[in] dwAttributes

DWORD contenente gli attributi come descritto nel metodo IMDSPStorage::CreateStorage .

[in] dwAttributesEx

DWORD contenente gli attributi estesi. Attualmente non sono definiti attributi estesi.

[in] pAudioFormat

Puntatore a una struttura _WAVEFORMATEX che contiene informazioni sul formato audio sull'oggetto. Questo parametro è facoltativo e viene ignorato se il file non è audio.

[in] pVideoFormat

Puntatore a una struttura _VIDEOINFOHEADER che contiene informazioni sul formato video sull'oggetto. Questo parametro è facoltativo e viene ignorato se il file non è video.

[in] pwszName

Puntatore a una stringa con terminazione Null a caratteri wide contenente il nome per la nuova risorsa di archiviazione.

[in] qwFileSize

QWORD contenente le dimensioni del file da creare. Se le dimensioni totali del file di output non sono note al momento della creazione, questo valore verrà impostato su zero.

[out] ppNewStorage

Puntatore a un puntatore IMDSPStorage per ricevere l'interfaccia IMDSPStorage per la risorsa di archiviazione appena creata.

Valore restituito

Il metodo restituisce un valore HRESULT. Tutti i metodi di interfaccia in Windows Media Gestione dispositivi possono restituire una delle classi di codici di errore seguenti:

  • Codici di errore COM standard
  • Codici di errore di Windows convertiti in valori HRESULT
  • Codici di errore di Windows Media Gestione dispositivi
Per un elenco completo dei codici di errore possibili, vedere Codici di errore.

Commenti

Se vengono impostati entrambi gli attributi WMDM_FILE_ATTR_FOLDER e WMDM_FILE_ATTR_FILE, l'attributo della cartella esegue l'override dell'attributo file e la nuova risorsa di archiviazione viene creata come cartella.

Solo uno dei WMDM_STORAGECONTROL_INSERTBEFORE, WMDM_STORAGECONTROL_INSERTAFTER e WMDM_STORAGECONTROL_INSERTINTO possono essere specificati dal client.

La nuova risorsa di archiviazione può essere creata allo stesso livello o può essere inserita nella risorsa di archiviazione corrente, purché l'archiviazione corrente sia una cartella. Ciò è controllato dal valore del parametro dwAttributes . Se specifica WMDM_STORAGECONTROL_INSERTBEFORE o WMDM_STORAGECONTROL_INSERTAFTER, la nuova risorsa di archiviazione verrà creata allo stesso livello dell'archiviazione corrente. Se specifica WMDM_STORAGECONTROL_INSERTINTO, la nuova risorsa di archiviazione verrà inserita nella risorsa di archiviazione corrente.

WMDM_STORAGECONTROL_INSERTBEFORE e WMDM_STORAGECONTROL_INSERAFTER implicano un ordinamento del contenuto nel file system. Se il file system non supporta l'ordinamento (ad esempio, FAT32) entrambi i flag hanno l'effetto identico di inserire la nuova risorsa di archiviazione allo stesso livello dell'archiviazione corrente. Se l'archiviazione corrente rappresenta la radice del supporto di archiviazione e viene specificato uno di questi due flag, l'operazione non riesce.

WMDM_STORAGECONTROL_INSERTINTO è valido solo se lo spazio di archiviazione corrente è una cartella. Se l'archiviazione corrente è un file e questo flag viene specificato, l'operazione non riesce.

Questo metodo deve essere implementato. Non deve restituire WMDM_E_NOTSUPPORTED o E_NOTIMPL. Per altre informazioni, vedere Interfacce obbligatorie e facoltative.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione mswmdm.h
Libreria Mssachlp.lib

Vedi anche

Interfaccia IMDSPStorage2

IMDSPStorage::CreateStorage