Compartir a través de


Método IMDSPStorage2::CreateStorage2 (mswmdm.h)

El método CreateStorage2 crea un nuevo almacenamiento con el nombre especificado y devuelve un puntero a la interfaz IMDSPStorage en el almacenamiento recién creado.

Sintaxis

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

Parámetros

[in] dwAttributes

DWORD que contiene los atributos como se describe en el método IMDSPStorage::CreateStorage .

[in] dwAttributesEx

DWORD que contiene los atributos extendidos. Actualmente no hay ningún atributo extendido definido.

[in] pAudioFormat

Puntero a una estructura de _WAVEFORMATEX que contiene información de formato de audio sobre el objeto. Este parámetro es opcional y se omite si el archivo no es audio.

[in] pVideoFormat

Puntero a una estructura de _VIDEOINFOHEADER que contiene información de formato de vídeo sobre el objeto. Este parámetro es opcional y se omite si el archivo no es vídeo.

[in] pwszName

Puntero a una cadena terminada en null de caracteres anchos que contiene el nombre del nuevo almacenamiento.

[in] qwFileSize

QWORD que contiene el tamaño del archivo que se va a crear. Si no se conoce el tamaño total del archivo de salida en el momento de la creación, este valor se establecerá en cero.

[out] ppNewStorage

Puntero a un puntero IMDSPStorage para recibir la interfaz IMDSPStorage para el almacenamiento recién creado.

Valor devuelto

El método devuelve un valor HRESULT. Todos los métodos de interfaz de Windows Media Administrador de dispositivos pueden devolver cualquiera de las siguientes clases de códigos de error:

  • Códigos de error COM estándar
  • Códigos de error de Windows convertidos en valores HRESULT
  • Códigos de error de windows Media Administrador de dispositivos
Para obtener una lista extensa de posibles códigos de error, consulte Códigos de error.

Comentarios

Si se establecen los atributos WMDM_FILE_ATTR_FOLDER y WMDM_FILE_ATTR_FILE, el atributo folder invalida el atributo de archivo y el nuevo almacenamiento se crea como una carpeta.

Solo el cliente puede especificar uno de WMDM_STORAGECONTROL_INSERTBEFORE, WMDM_STORAGECONTROL_INSERTAFTER y WMDM_STORAGECONTROL_INSERTINTO.

El nuevo almacenamiento se puede crear en el mismo nivel o se puede insertar en el almacenamiento actual, siempre que el almacenamiento actual sea una carpeta. Esto se controla mediante el valor del parámetro dwAttributes . Si especifica WMDM_STORAGECONTROL_INSERTBEFORE o WMDM_STORAGECONTROL_INSERTAFTER, el nuevo almacenamiento se creará en el mismo nivel que el almacenamiento actual. Si especifica WMDM_STORAGECONTROL_INSERTINTO, el nuevo almacenamiento se insertará en el almacenamiento actual.

WMDM_STORAGECONTROL_INSERTBEFORE y WMDM_STORAGECONTROL_INSERAFTER implican una ordenación del contenido en el sistema de archivos. Si el sistema de archivos no admite la ordenación (por ejemplo, FAT32), ambas marcas tienen el efecto idéntico de insertar el nuevo almacenamiento en el mismo nivel que el almacenamiento actual. Si el almacenamiento actual representa la raíz del medio de almacenamiento y se especifica una de estas dos marcas, se produce un error en la operación.

WMDM_STORAGECONTROL_INSERTINTO solo es válido si el almacenamiento actual es una carpeta. Si el almacenamiento actual es un archivo y se especifica esta marca, se produce un error en la operación.

Este método debe implementarse. No debe devolver WMDM_E_NOTSUPPORTED ni E_NOTIMPL. Para obtener más información, consulte Interfaces obligatorias y opcionales.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado mswmdm.h
Library Mssachlp.lib

Consulte también

Interfaz IMDSPStorage2

IMDSPStorage::CreateStorage