다음을 통해 공유


IWMDRMDeviceApp::AcquireDeviceData 메서드

AcquireDeviceData 메서드는 디바이스 보안 클록을 초기화하거나 다시 설정합니다.

구문

HRESULT AcquireDeviceData(
  [in]  IWMDMDevice    *pDevice,
  [in]  IWMDMProgress3 *pProgressCallback,
  [in]  DWORD          dwFlags,
  [out] DWORD          *pdwStatus
);

매개 변수

pDevice [in]

계량 데이터를 보고할 디바이스의 IWMDMDevice 인터페이스에 대한 포인터입니다.

pProgressCallback [in]

애플리케이션이 이벤트의 진행률을 추적하거나 이벤트를 취소할 수 있는 진행률 콜백입니다. 진행률은 IWMDMProgress3 메서드의 EventId 매개 변수로 식별됩니다.

dwFlags [in]

수행할 작업을 지정하는 다음 플래그 중 하나 또는 둘 다의 논리적 OR 입니다. 이 값은 IWMDRMDeviceApp::QueryDeviceStatus 또는 IWMDRMDeviceApp2::QueryDeviceStatus2pdwStatus 매개 변수에서 검색됩니다. pdwStatus 플래그를 직접 사용할 수 있습니다.

플래그 설명
WMDRM_DEVICE_NEEDCLOCK 보안 클록 서버에서 클록을 획득합니다.
WMDRM_DEVICE_REFRESHCLOCK 보안 클록 서버에서 시계를 새로 고칩니다.

pdwStatus [out]

디바이스에서 반환된 상태 지정하는 다음 DWORD 값 중 하나입니다.

상태 Description
0 작업은 지원되지 않습니다.
1 서비스에서 디바이스 보안 클록을 가져올 수 없습니다.
2 디바이스의 보안 클록을 설정할 수 없습니다.
3 디바이스의 보안 시계가 설정되었습니다.

반환 값

이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.

반환 코드 Description
S_OK
메서드가 성공했습니다.
DRM_E_INVALIDARG
하나 이상의 인수가 잘못되었습니다.
NS_E_DEVICE_NOT_WMDRM_DEVICE
지정된 디바이스가 Windows Media DRM 호환 디바이스가 아닙니다.
NS_E_DRM_UNABLE_TO_GET_SECURE_CLOCK
디바이스에서 보안 클록 챌린지를 검색하지 못했거나 챌린지에서 보안 클록 URL을 검색할 수 없습니다.
NS_E_DRM_UNABLE_TO_GET_SECURE_CLOCK_FROM_SERVER
보안 클록 서버에서 보안 클록 응답을 검색하지 못했습니다.
NS_E_DRM_UNABLE_TO_SET_SECURE_CLOCK
디바이스에 보안 클록 챌린지를 보내지 못했거나 디바이스가 시계를 설정하지 못했습니다.

설명

비동기 메서드입니다. 디바이스는 라이선스가 있는 콘텐츠를 재생하기 전에 이 작업에 대한 IWMDMProgress::End 콜백을 대기해야 합니다.

애플리케이션은 IWMDRMDeviceApp::QueryDeviceStatus 또는 IWMDRMDeviceApp2::QueryDeviceStatus2를 호출하여 디바이스에 클록 재설정 또는 업데이트가 있어야 하는지 알아볼 수 있습니다.

보안 클록을 가져오거나 다시 설정할 수 있도록 하려면 애플리케이션에 인터넷 연결이 있어야 합니다.

요구 사항

요구 사항
헤더
WMDRMDeviceApp.h(WMDRMDeviceApp.idl에서 빌드된 Wmdrmdeviceapp_i.c도 필요)
라이브러리
Mssachlp.lib

추가 정보

애플리케이션에서 보호된 콘텐츠 처리

IWMDMDevice 인터페이스

IWMDMProgress3 인터페이스

IWMDRMDeviceApp 인터페이스