다음을 통해 공유


ISCPSecureExchange3::TransferContainerDataOnClearChannel 메서드(mswmdm.h)

TransferContainerDataOnClearChannel 메서드는 지우기 채널을 통해 컨테이너 파일 데이터를 콘텐츠 공급자로 전송합니다. 콘텐츠 공급자는 컨테이너를 내부적으로 분해하고 컨테이너에서 추출할 때 사용할 수 있는 콘텐츠 부분을 보고합니다.

이 메서드는 이 메서드에 전달된 매개 변수가 암호화되지 않는다는 점을 제외하고 ISCPSecureExchange::TransferContainerData 와 동일합니다. 따라서 이 메서드는 더 효율적입니다.

구문

HRESULT TransferContainerDataOnClearChannel(
  IMDSPDevice    *pDevice,
  BYTE           *pData,
  DWORD          dwSize,
  IWMDMProgress3 *pProgressCallback,
  UINT           *pfuReadyFlags
);

매개 변수

pDevice

디바이스 개체에 대한 포인터입니다.

pData

컨테이너 파일에서 전송되는 현재 데이터를 보유하는 버퍼에 대한 포인터입니다.

dwSize

버퍼의 바이트 수를 포함합니다.

pProgressCallback

콘텐츠 공급자가 수행해야 할 수 있는 단계의 진행률을 보고할 수 있는 진행률 콜백입니다. 단계는 IWMDMProgress3 메서드의 EventId 매개 변수로 식별됩니다.

pfuReadyFlags

컨테이너 파일을 읽을 준비가 된 부분을 나타내는 플래그입니다. 이 매개 변수는 출력 메시지 인증 코드에 포함됩니다. 다음 플래그는 준비된 내용을 나타냅니다.

의미
WMDM_SCP_TRANSFER_OBJECTDATA
개체의 데이터는 GetObjectDataOnClearChannel 메서드를 호출하여 사용할 수 있습니다.
WMDM_SCP_NO_MORE_CHANGES
콘텐츠 공급자는 전송 중인 파일을 더 이상 처리 및/또는 수정할 필요가 없다고 결정했습니다. Windows Media 디바이스 관리자 파일의 나머지 부분을 디바이스로 직접 전송할 수 있습니다.

반환 값

메서드가 성공하면 S_OK가 반환되고, 메서드가 실패하면 HRESULT 오류 코드가 반환됩니다.

반환 코드 설명
WMDM_E_NOT_CERTIFIED
호출자에게 이 인터페이스를 사용할 권한이 없습니다.
WMDM_E_NORIGHTS
호출자에게 요청된 작업을 수행하는 데 필요한 권한이 없습니다.
WMDM_E_MAC_CHECK_FAILED
메시지 인증 코드가 잘못되었습니다.
S_FALSE
메서드가 실패했습니다. 콘텐츠 공급자와의 상호 작용을 종료합니다.
E_INVALIDARG
매개 변수가 잘못되었거나 NULL 포인터입니다.
E_FAIL
지정되지 않은 오류가 발생했습니다.

설명

Windows Media 디바이스 관리자 이 메서드를 반복적으로 호출하여 컨테이너 파일에서 콘텐츠 공급자로 데이터를 전송합니다. Windows Media 디바이스 관리자 dwSize가 0으로 설정된 상태에서 이 메서드를 호출하여 전송할 데이터가 더 이상 없음을 나타냅니다. 콘텐츠 공급자는 데이터를 수집하고 다양한 개체를 추출할 때 각 호출 후에 사용할 수 있는 개체를 디바이스 관리자 Windows Media에 다시 보고합니다. 사용할 수 있는 개체가 없으면 콘텐츠 공급자는 pfuReadyFlags 매개 변수가 0으로 설정된 S_OK 반환합니다. 콘텐츠 공급자가 전송 중인 파일의 추가 처리 및/또는 수정이 필요하지 않은 것으로 확인되면 WMDM_SCP_NO_MORE_CHANGES 플래그가 반환됩니다. 그러면 Windows Media 디바이스 관리자 파일의 나머지 부분을 디바이스로 직접 전송할 수 있습니다.

개체 데이터는 GetObjectDataOnClearChannel 메서드를 호출하여 콘텐츠 공급자에서 전송됩니다. Windows Media 디바이스 관리자 세 번째 매개 변수 pdwsize에서 0을 반환할 때까지 GetObjectDataOnClearChannel을 반복적으로 호출합니다.

ISCPSecureExchange::TransferComplete(또는 세션이 활성 상태인 경우 TransferCompleteForDevice) 메서드는 Windows Media 디바이스 관리자 호출되어 데이터 전송의 끝을 알립니다.

Windows Media 디바이스 관리자 pProgressCallback 매개 변수의 콘텐츠 공급자에 애플리케이션 제공 진행률 콜백을 전달합니다. 콘텐츠 공급자는 이 매개 변수를 사용하여 수행해야 하는 모든 단계에 대한 진행률 알림을 제공할 수 있습니다. 단계 자체는 IWMDMProgress3 메서드의 첫 번째 매개 변수인 EventId로 식별됩니다. 특정 콘텐츠 공급자 구현은 사용할 애플리케이션에 대한 EventId 값을 정의합니다.

이 메서드는 이 메서드에 전달된 매개 변수가 암호화되지 않는다는 점을 제외하고 ISCPSecureExchange::TransferContainerData 와 동일합니다. 따라서 이 메서드는 더 효율적입니다.

요구 사항

   
대상 플랫폼 Windows
헤더 mswmdm.h
라이브러리 Mssachlp.lib

추가 정보

ISCPSecureExchange3 인터페이스

ISCPSecureExchange::TransferContainerData