IMFInputTrustAuthority::RequestAccess 메서드(mfidl.h)
스트림에서 지정된 작업을 수행할 수 있는 권한을 요청합니다.
구문
HRESULT RequestAccess(
[in] MFPOLICYMANAGER_ACTION Action,
[out] IMFActivate **ppContentEnablerActivate
);
매개 변수
[in] Action
MFPOLICYMANAGER_ACTION 열거형의 멤버로 지정된 요청된 작업입니다.
[out] ppContentEnablerActivate
값 NULL 또는 IMFActivate 인터페이스에 대한 포인터를 받습니다. IMFActivate 인터페이스는 콘텐츠 사용자 개체를 만드는 데 사용됩니다. 호출자는 인터페이스를 해제해야 합니다. 자세한 내용은 설명 부분을 참조하세요.
반환 값
이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.
반환 코드 | 설명 |
---|---|
|
사용자에게 이 작업을 수행할 수 있는 권한이 있습니다. |
|
사용자는 애플리케이션을 개별화해야 합니다. |
|
사용자는 라이선스를 받아야 합니다. |
설명
이 메서드는 사용자가 스트림에서 지정된 작업을 수행할 수 있는 권한이 있는지 확인합니다. ITA는 라이선스 확인과 같이 사용자의 작업 수행 권한을 확인하는 데 필요한 모든 작업을 수행합니다.
사용자의 권한을 확인하려면 ITA가 사용자와의 상호 작용 또는 사용자의 동의가 필요한 추가 단계를 수행해야 할 수 있습니다. 예를 들어 새 라이선스를 획득하거나 DRM 구성 요소를 개별화해야 할 수 있습니다. 이 경우 ITA는 콘텐츠 인에이블러에 대한 활성화 개체를 만들고 ppContentEnablerActivate 매개 변수에 활성화 개체의 IMFActivate 인터페이스를 반환합니다. 활성화 개체는 IMFContentEnabler 인터페이스를 노출하는 콘텐츠 인에이블러를 만듭니다. 콘텐츠 인에이블러는 다음과 같이 사용됩니다.
- 미디어 세션은 애플리케이션에 대한 IMFActivate 포인터를 반환합니다.
- 애플리케이션은 IMFActivate::ActivateObject 를 호출하여 콘텐츠 인에이블러를 활성화합니다.
- 애플리케이션은 IMFContentEnabler 메서드를 호출하여 개별화 또는 라이선스 획득과 같은 필요한 모든 작업을 수행합니다. 콘텐츠 인에이블러 개체는 IMFContentEnabler 인터페이스를 통해 이 기능을 캡슐화해야 합니다.
- 미디어 세션에서 RequestAccess를 다시 호출합니다.
- 사용자가 작업을 수행할 수 있는 권한이 이미 있는 경우 메서드는 S_OK 반환하고 *ppContentEnablerActivate 를 NULL로 설정합니다.
- 사용자에게 권한이 없는 경우 메서드는 실패 코드를 반환하고 *ppContentEnablerActivate 를 NULL로 설정합니다.
- ITA가 사용자와 상호 작용해야 하는 추가 단계를 수행해야 하는 경우 메서드는 실패 코드를 반환하고 ppContentEnablerActivate에서 콘텐츠 인에이블러의 IMFActivate 포인터를 반환합니다.
스트림은 여러 출력으로 이동될 수 있으므로 이 메서드는 각 출력에 대해 한 번씩 다른 작업을 사용하여 여러 번 호출될 수 있습니다.
요구 사항
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | mfidl.h |
라이브러리 | Mfuuid.lib |