estructura MFP_ACQUIRE_USER_CREDENTIAL_EVENT (mfplay.h)

Importante Obsoleto. Esta API se puede quitar de futuras versiones de Windows. Las aplicaciones deben usar la sesión multimedia para la reproducción.
 

Estructura de eventos para el evento MFP_EVENT_TYPE_ACQUIRE_USER_CREDENTIAL . Este evento se envía si la aplicación reproduce un archivo multimedia desde un servidor que requiere autenticación. La aplicación puede responder proporcionando las credenciales de usuario.

Sintaxis

typedef struct MFP_ACQUIRE_USER_CREDENTIAL_EVENT {
  MFP_EVENT_HEADER     header;
  DWORD_PTR            dwUserData;
  BOOL                 fProceedWithAuthentication;
  HRESULT              hrAuthenticationStatus;
  LPCWSTR              pwszURL;
  LPCWSTR              pwszSite;
  LPCWSTR              pwszRealm;
  LPCWSTR              pwszPackage;
  LONG                 nRetries;
  MFP_CREDENTIAL_FLAGS flags;
  IMFNetCredential     *pCredential;
} MFP_ACQUIRE_USER_CREDENTIAL_EVENT;

Miembros

header

MFP_EVENT_HEADER estructura que contiene datos comunes a todos los eventos IMFPMediaPlayer .

dwUserData

Datos de usuario definidos por la aplicación para el elemento multimedia. Este valor se especifica cuando la aplicación llama a IMFPMediaPlayer::CreateMediaItemFromURL o IMFPMediaPlayer::CreateMediaItemFromObject para crear el elemento multimedia.

Este evento se envía (si está en absoluto) antes de que se cree el elemento multimedia y antes de que la aplicación reciba el evento MFP_EVENT_TYPE_MEDIAITEM_CREATED . Puede usar el valor de dwUserData para identificar qué elemento multimedia requiere autenticación.

fProceedWithAuthentication

La aplicación debe establecer este miembro en TRUE o FALSE antes de volver de la devolución de llamada del evento IMFPMediaPlayerCallback::OnMediaPlayerEvent .

Si el valor es TRUE cuando se devuelve la devolución de llamada, MFPlay continúa el intento de autenticación. De lo contrario, se produce un error en la autenticación.

hrAuthenticationStatus

Código de respuesta del desafío de autenticación.

pwszURL

Dirección URL original que requiere autenticación.

pwszSite

Nombre del sitio o proxy que requiere autenticación.

pwszRealm

Nombre del dominio kerberos para esta autenticación.

pwszPackage

Nombre del paquete de autenticación, como "Digest" o "MBS_BASIC".

nRetries

Número de reintentos. Este miembro se establece en cero en el primer intento e incrementa una vez para cada intento posterior.

flags

OR bit a bit de cero o más marcas de la enumeración _MFP_CREDENTIAL_FLAGS.

pCredential

Puntero a la interfaz IMFNetCredential . La aplicación usa esta interfaz para establecer las credenciales del usuario.

Comentarios

Para obtener un puntero a esta estructura, convierta el parámetro pEventHeader del método de devolución de llamada IMFPMediaPlayerCallback::OnMediaPlayerEvent . Puede usar la macro MFP_GET_ACQUIRE_USER_CREDENTIAL_EVENT para este fin.

Si el miembro flags contiene la marca MFP_CREDENTIAL_PROMPT , la aplicación debe hacer lo siguiente:

  1. Pida al usuario que escriba un nombre de usuario y una contraseña.
  2. Almacene el nombre de usuario en el objeto de credenciales llamando a IMFNetCredential::SetUser en el puntero pCredential .
  3. Almacene la contraseña llamando a IMFNetCredential::SetPassword en el puntero pCredential .
Para cancelar la autenticación, establezca fProceedWithAuthentication igual a FALSE.

De forma predeterminada, MFPlay usa la implementación del origen de red de IMFNetCredentialManager para administrar las credenciales. Una aplicación puede proporcionar su propia implementación de esta interfaz de la siguiente manera:

  1. Llame a QueryInterface en el puntero IMFPMediaPlayer para obtener la interfaz IPropertyStore .
  2. Llame a IPropertyStore::SetValue para establecer la propiedad MFNETSOURCE_CREDENTIAL_MANAGER .

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Encabezado mfplay.h

Consulte también

IMFPMediaPlayerCallback

Estructuras de Media Foundation

Uso de MFPlay para la reproducción de audio y vídeo