Compartir a través de


Método ISCPSecureExchange3::TransferContainerDataOnClearChannel (mswmdm.h)

El método TransferContainerDataOnClearChannel transfiere los datos del archivo de contenedor al proveedor de contenido a través del canal sin cifrar. El proveedor de contenido desglosa el contenedor internamente e informa de qué partes del contenido están disponibles a medida que se extraen del contenedor.

Este método es idéntico a ISCPSecureExchange::TransferContainerData , salvo que los parámetros pasados a este método no están cifrados. Por lo tanto, este método es más eficaz.

Sintaxis

HRESULT TransferContainerDataOnClearChannel(
  IMDSPDevice    *pDevice,
  BYTE           *pData,
  DWORD          dwSize,
  IWMDMProgress3 *pProgressCallback,
  UINT           *pfuReadyFlags
);

Parámetros

pDevice

Puntero a un objeto de dispositivo.

pData

Puntero a un búfer que contiene los datos actuales que se transfieren desde el archivo de contenedor.

dwSize

Contiene el número de bytes en el búfer.

pProgressCallback

Devolución de llamada de progreso en la que el proveedor de contenido puede notificar el progreso de los pasos que podría necesitar llevar a cabo. El paso se identificará mediante el parámetro EventId de los métodos IWMDMProgress3 .

pfuReadyFlags

Marca que indica qué partes del archivo de contenedor están listas para leerse. Este parámetro se incluye en el código de autenticación del mensaje de salida. Las marcas siguientes indican lo que está listo.

Valor Significado
WMDM_SCP_TRANSFER_OBJECTDATA
Los datos del objeto están disponibles llamando al método GetObjectDataOnClearChannel .
WMDM_SCP_NO_MORE_CHANGES
El proveedor de contenido ha determinado que no requiere ningún procesamiento adicional ni modificación del archivo que se va a transferir. Windows Media Administrador de dispositivos puede transferir directamente el resto del archivo al dispositivo.

Valor devuelto

Si el método se realiza correctamente, devuelve S_OK. Si se produce un error en el método, devuelve un código de error HRESULT .

Código devuelto Descripción
WMDM_E_NOT_CERTIFIED
El autor de la llamada no está autorizado para usar esta interfaz.
WMDM_E_NORIGHTS
El autor de la llamada no tiene los derechos necesarios para realizar la operación solicitada.
WMDM_E_MAC_CHECK_FAILED
El código de autenticación del mensaje no es válido.
S_FALSE
Error en el método. Finalizar la interacción con el proveedor de contenido.
E_INVALIDARG
Un parámetro no es válido o es un puntero NULL .
E_FAIL
Se ha producido un error no especificado.

Comentarios

Windows Media Administrador de dispositivos llama repetidamente a este método y transfiere datos del archivo de contenedor al proveedor de contenido. Windows Media Administrador de dispositivos finalmente llama a este método con dwSize establecido en cero para indicar que no tiene más datos que transferir. A medida que el proveedor de contenido recopila los datos y extrae los distintos objetos de él, informa de nuevo a Windows Media Administrador de dispositivos qué objetos, si los hay, están disponibles después de cada llamada. Si no hay ningún objeto disponible, el proveedor de contenido devuelve S_OK con el parámetro pfuReadyFlags establecido en cero. Cuando el proveedor de contenido ha determinado que no requiere ningún procesamiento adicional ni modificación del archivo que se va a transferir, se devuelve la marca WMDM_SCP_NO_MORE_CHANGES. Windows Media Administrador de dispositivos puede transferir directamente el resto del archivo al dispositivo.

Los datos de objeto se transfieren desde el proveedor de contenido llamando al método GetObjectDataOnClearChannel . Windows Media Administrador de dispositivos llama repetidamente a GetObjectDataOnClearChannel hasta que devuelve cero en el tercer parámetro, pdwsize.

Windows Media llama al método ISCPSecureExchange::TransferComplete (o TransferCompleteForDevice si una sesión está activa) Administrador de dispositivos para indicar el final de una transferencia de datos.

Windows Media Administrador de dispositivos pasa la devolución de llamada de progreso proporcionada por la aplicación al proveedor de contenido en el parámetro pProgressCallback. El proveedor de contenido puede usar este parámetro para proporcionar una notificación de progreso para los pasos que necesita llevar a cabo. El propio paso se identifica mediante EventId, que es el primer parámetro de los métodos de IWMDMProgress3. Una implementación específica del proveedor de contenido definirá valores eventId para que las aplicaciones las usen.

Este método es idéntico a ISCPSecureExchange::TransferContainerData , salvo que los parámetros pasados a este método no están cifrados. Por lo tanto, este método es más eficaz.

Requisitos

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

Consulte también

Interfaz ISCPSecureExchange3

ISCPSecureExchange::TransferContainerData