IWMDMProgress3::P rogress3 메서드(mswmdm.h)
Progress3 메서드는 진행 중인 작업의 상태 나타내기 위해 Windows Media 장치 관리자 호출됩니다. 이 메서드는 이벤트의 ID(ID)와 명령 컨텍스트에 대한 포인터에 대한 추가 입력 매개 변수를 제공하여 IWMDMProgress::P rogress 를 확장합니다.
구문
HRESULT Progress3(
[in] GUID EventId,
[in] DWORD dwTranspiredTicks,
[in, out] OPAQUECOMMAND *pContext
);
매개 변수
[in] EventId
진행률 알림을 보낼 이벤트 ID를 지정하는 GUID입니다. 가능한 값은 다음 표에 나와 있습니다.
이벤트 | Description |
---|---|
SCP_EVENTID_ACQSECURECLOCK | Windows Media 장치 관리자 서버에서 보안 시계를 확보하고 있습니다. |
SCP_EVENTID_NEEDTOINDIV | 디바이스가 개별화되고 있습니다. 현재 사용되지 않습니다. |
SCP_EVENTID_DRMINFO |
이 이벤트 ID는 각 파일의 콘텐츠에 있는 버전 DRM 헤더를 사용하여 애플리케이션에 알리는 데 사용됩니다.
반환된 OPAQUECOMMAND 구조체에는 guidCommand 매개 변수가 SCP_PARAMID_DRMVERSION 설정됩니다. 또한 데이터는 다음 플래그 중 하나를 지정합니다. WMDM_SCP_DRMINFO_NOT_DRMPROTECTED WMDM_SCP_DRMINFO_V1HEADER WMDM_SCP_DRMINFO_V2HEADER |
EVENT_WMDM_CONTENT_TRANSFER | 콘텐츠가 디바이스로 또는 장치에서 전송되고 있습니다. |
[in] dwTranspiredTicks
지금까지 일어난 틱 수를 지정하는 DWORD입니다.
[in, out] pContext
Windows Media 장치 관리자 처리하지 않고 디바이스로 직접 전송되는 명령을 포함하는 OPAQUECOMMAND 구조체에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다. 이벤트가 SCP_EVENTID_DRMINFO 경우 이 매개 변수의 데이터에는 SCP_PARAMID_DRMVERSION GUID가 있습니다.
반환 값
애플리케이션은 다음 HRESULT 값 중 하나를 반환해야 합니다.
반환 코드 | Description |
---|---|
|
작업은 계속되어야 합니다. |
|
Windows Media 장치 관리자 완료되기를 기다리지 않고 현재 작업을 취소해야 합니다. 애플리케이션이 블록 모드를 사용하는 경우 Windows Media 장치 관리자 이 오류를 애플리케이션에 반환합니다. |
설명
작업을 구현하는 메서드를 소유하는 인터페이스는 메서드에서 정의한 작업이 수행될 때 Progress3 메서드를 호출합니다. Progress3 는 예상 틱당 한 번씩 호출됩니다. 그러나 수행 중인 작업이 예상된 각 틱에 대해 하나의 호출을 보장하지 않을 수 있으므로 각 호출에서 dwTranspiredTicks 매개 변수를 확인해야 합니다.
애플리케이션은 호출 메서드에 S_OK 반환하여 작업이 계속되어야 함을 나타냅니다. 애플리케이션은 작업을 취소해야 함을 나타내는 WMDM_E_USER_CANCELLED 반환합니다. 애플리케이션이 블록 모드를 사용하고 WMDM_E_USER_CANCELLED 반환하는 경우 Windows Media 장치 관리자 동일한 오류를 애플리케이션에 반환합니다.
예제
다음 C++ 코드는 Progress3의 구현 예제를 보여줍니다.
HRESULT Progress3(GUID EventId, DWORD dwTranspiredTicks, OPAQUECOMMAND* pContext)
{
WCHAR strGuid[64];
ZeroMemory(strGuid, 64);
StringFromGUID2(reinterpret_cast<GUID&>(EventId),(LPOLESTR)strGuid, 64);
// TODO: Display the message: "Progress3 called. GUID value: "
// followed by the strGUID value.
// TODO: Display the message: "Progress3 dwTranspiredTicks: "
// followed by the dwTranspiredTicks value.
return S_OK;
}
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | mswmdm.h |
라이브러리 | Mssachlp.lib |