MFP_ACQUIRE_USER_CREDENTIAL_EVENT 구조체(mfplay.h)

중요 되지 않는. 이 API는 향후 Windows 릴리스에서 제거될 수 있습니다. 애플리케이션은 재생에 미디어 세션을 사용해야 합니다.
 

MFP_EVENT_TYPE_ACQUIRE_USER_CREDENTIAL 이벤트에 대한 이벤트 구조입니다. 이 이벤트는 애플리케이션이 인증이 필요한 서버에서 미디어 파일을 재생하는 경우 전송됩니다. 애플리케이션은 사용자 자격 증명을 제공하여 응답할 수 있습니다.

구문

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;

멤버

header

모든IMFPMediaPlayer 이벤트에 공통적인 데이터를 포함하는 MFP_EVENT_HEADER 구조체입니다.

dwUserData

미디어 항목에 대한 애플리케이션 정의 사용자 데이터입니다. 이 값은 애플리케이션이 IMFPMediaPlayer::CreateMediaItemFromURL 또는 IMFPMediaPlayer::CreateMediaItemFromObject 를 호출하여 미디어 항목을 만들 때 지정됩니다.

이 이벤트는 미디어 항목을 만들기 전과 애플리케이션이 MFP_EVENT_TYPE_MEDIAITEM_CREATED 이벤트를 수신하기 전에 전송됩니다(전혀 있는 경우). dwUserData 값을 사용하여 인증이 필요한 미디어 항목을 식별할 수 있습니다.

fProceedWithAuthentication

애플리케이션은 IMFPMediaPlayerCallback::OnMediaPlayerEvent 이벤트 콜백에서 반환하기 전에 이 멤버를 TRUE 또는 FALSE로 설정해야 합니다.

콜백이 반환되면 값이 TRUE 이면 MFPlay는 인증 시도를 계속합니다. 그렇지 않으면 인증이 실패합니다.

hrAuthenticationStatus

인증 챌린지의 응답 코드입니다.

pwszURL

인증이 필요한 원래 URL입니다.

pwszSite

인증이 필요한 사이트 또는 프록시의 이름입니다.

pwszRealm

이 인증에 대한 영역의 이름입니다.

pwszPackage

"다이제스트" 또는 "MBS_BASIC"과 같은 인증 패키지의 이름입니다.

nRetries

재시도 횟수입니다. 이 멤버는 첫 번째 시도에서 0으로 설정되고 후속 시도마다 한 번 증가합니다.

flags

_MFP_CREDENTIAL_FLAGS 열거형에서 0개 이상의 플래그의 비트 OR입니다.

pCredential

IMFNetCredential 인터페이스에 대한 포인터입니다. 애플리케이션은 이 인터페이스를 사용하여 사용자의 자격 증명을 설정합니다.

설명

이 구조체에 대한 포인터를 얻으려면 IMFPMediaPlayerCallback::OnMediaPlayerEvent 콜백 메서드의 pEventHeader 매개 변수를 캐스팅합니다. 이 용도로 MFP_GET_ACQUIRE_USER_CREDENTIAL_EVENT 매크로를 사용할 수 있습니다.

flags 멤버에 MFP_CREDENTIAL_PROMPT 플래그가 포함된 경우 애플리케이션은 다음을 수행해야 합니다.

  1. 사용자에게 사용자 이름 및 암호를 입력하라는 메시지를 표시합니다.
  2. pCredential 포인터에서 IMFNetCredential::SetUser를 호출하여 자격 증명 개체에 사용자 이름을 저장합니다.
  3. pCredential 포인터에서 IMFNetCredential::SetPassword를 호출하여 암호를 저장합니다.
인증을 취소하려면 fProceedWithAuthenticationFALSE로 설정합니다.

기본적으로 MFPlay는 네트워크 원본의 IMFNetCredentialManager 구현을 사용하여 자격 증명을 관리합니다. 애플리케이션은 다음과 같이 이 인터페이스의 자체 구현을 제공할 수 있습니다.

  1. IMFPMediaPlayer 포인터에서 QueryInterface를 호출하여 IPropertyStore 인터페이스를 가져옵니다.
  2. IPropertyStore::SetValue를 호출하여 MFNETSOURCE_CREDENTIAL_MANAGER 속성을 설정합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
머리글 mfplay.h

추가 정보

IMFPMediaPlayerCallback

미디어 파운데이션 구조

오디오/비디오 재생에 MFPlay 사용