structure MFP_ACQUIRE_USER_CREDENTIAL_EVENT (mfplay.h)

Important Déconseillée. Cette API peut être supprimée des versions ultérieures de Windows. Les applications doivent utiliser la session multimédia pour la lecture.
 

Structure d’événements pour l’événement MFP_EVENT_TYPE_ACQUIRE_USER_CREDENTIAL . Cet événement est envoyé si l’application lit un fichier multimédia à partir d’un serveur qui nécessite une authentification. L’application peut répondre en fournissant les informations d’identification de l’utilisateur.

Syntaxe

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;

Membres

header

MFP_EVENT_HEADER structure qui contient des données communes à tous les événements IMFPMediaPlayer .

dwUserData

Données utilisateur définies par l’application pour l’élément multimédia. Cette valeur est spécifiée lorsque l’application appelle IMFPMediaPlayer ::CreateMediaItemFromURL ou IMFPMediaPlayer ::CreateMediaItemFromObject pour créer l’élément multimédia.

Cet événement est envoyé (le cas échéant) avant la création de l’élément multimédia et avant que l’application ne reçoive l’événement MFP_EVENT_TYPE_MEDIAITEM_CREATED . Vous pouvez utiliser la valeur de dwUserData pour identifier l’élément multimédia nécessitant une authentification.

fProceedWithAuthentication

L’application doit définir ce membre sur TRUE ou FALSE avant de retourner à partir du rappel d’événement IMFPMediaPlayerCallback ::OnMediaPlayerEvent .

Si la valeur est TRUE lorsque le rappel est retourné, MFPlay poursuit la tentative d’authentification. Sinon, l’authentification échoue.

hrAuthenticationStatus

Code de réponse de la demande d’authentification.

pwszURL

URL d’origine qui nécessite une authentification.

pwszSite

Nom du site ou du proxy qui nécessite une authentification.

pwszRealm

Nom du domaine pour cette authentification.

pwszPackage

Nom du package d’authentification, tel que « Digest » ou « MBS_BASIC ».

nRetries

Nombre de nouvelles tentatives. Ce membre est défini sur zéro à la première tentative et incrémenté une fois pour chaque tentative suivante.

flags

OR au niveau du bit de zéro ou plusieurs indicateurs de l’énumération _MFP_CREDENTIAL_FLAGS.

pCredential

Pointeur vers l’interface IMFNetCredential . L’application utilise cette interface pour définir les informations d’identification de l’utilisateur.

Remarques

Pour obtenir un pointeur vers cette structure, castez le paramètre pEventHeader de la méthode de rappel IMFPMediaPlayerCallback ::OnMediaPlayerEvent . Vous pouvez utiliser la macro MFP_GET_ACQUIRE_USER_CREDENTIAL_EVENT à cet effet.

Si le membre d’indicateurs contient l’indicateur MFP_CREDENTIAL_PROMPT , l’application doit effectuer les opérations suivantes :

  1. Invitez l’utilisateur à entrer un nom d’utilisateur et un mot de passe.
  2. Stockez le nom d’utilisateur dans l’objet credentials en appelant IMFNetCredential ::SetUser sur le pointeur pCredential .
  3. Stockez le mot de passe en appelant IMFNetCredential ::SetPassword sur le pointeur pCredential .
Pour annuler l’authentification, définissez fProceedWithAuthentication sur FALSE.

Par défaut, MFPlay utilise l’implémentation d’IMFNetCredentialManager par la source réseau pour gérer les informations d’identification. Une application peut fournir sa propre implémentation de cette interface comme suit :

  1. Appelez QueryInterface sur le pointeur IMFPMediaPlayer pour obtenir l’interface IPropertyStore .
  2. Appelez IPropertyStore ::SetValue pour définir la propriété MFNETSOURCE_CREDENTIAL_MANAGER .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête mfplay.h

Voir aussi

IMFPMediaPlayerCallback

Media Foundation Structures

Utilisation de MFPlay pour la lecture audio/vidéo