WM_GET_LICENSE_DATA 구조체
[이 페이지와 연결된 기능, Windows Media Format 11 SDK는 레거시 기능입니다. 원본 판독기 및 싱크 기록기에 의해 대체되었습니다. 원본 판독 기 및 싱크 작성 기는 Windows 10 및 Windows 11에 최적화되었습니다. 가능한 경우 새 코드에서 Windows Media Format 11 SDK 대신 소스 판독기 및 싱크 기록기 사용을 강력하게 권장합니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]
WM_GET_LICENSE_DATA 구조에는 DRM라이선스를 획득할 위치에 대한 정보가 포함되어 있습니다.
구문
typedef struct _WMGetLicenseData {
DWORD dwSize;
HRESULT hr;
WCHAR *wszURL;
WCHAR *wszLocalFilename;
BYTE *pbPostData;
DWORD dwPostDataSize;
} WM_GET_LICENSE_DATA;
멤버
-
dwSize
-
WM_GET_LICENSE_DATA 구조체의 크기(바이트)를 포함하는 DWORD입니다.
-
Hr
-
HRESULT 반환 코드입니다.
-
wszURL
-
라이선스 획득 URL을 포함하는 와이드 문자 null로 끝나는 문자열입니다. 이 문자열 및 pbPostData 문자열을 비사음 라이선스 획득에 사용합니다.
-
wszLocalFilename
-
DRM 구성 요소에서 생성된 로컬 HTML 페이지를 포함하는 와이드 문자 null로 끝나는 문자열입니다. 이 문자열이 브라우저에 로드되면 필요한 사후 데이터와 함께 HTTP 요청을 라이선스 획득 URL로 자동으로 리디렉션합니다. 이 로컬 URL의 사용은 이제 더 이상 사용되지 않습니다. wszURL 및 pbPostData 문자열을 사용하는 것이 좋습니다.
-
pbPostData
-
라이선스 취득 URL에 게시할 데이터를 포함하는 바이트 배열에 대한 포인터입니다. pbPostData 문자열의 시작 부분에 다음 문자열을 추가해야 합니다. "nonsilent=1&challenge=". 그런 다음 HTTP 요청을 구성할 때 결과 문자열을 wszURL에 추가해야 합니다.
-
dwPostDataSize
-
pbPostData에서 참조되는 "nonsilent=1&challenge=" 문자열이 없는 pbPostData의 크기를 나타내는 DWORD입니다.
설명
이 채워진 구조체는 WMT_STATUS WMT_NO_RIGHTS_EX 또는 WMT_ACQUIRE_LICENSE 같은 경우 IWMStatusCallback::OnStatus 메서드의 pValue 매개 변수에 반환됩니다. WMT_NO_RIGHTS_EX 이벤트의 경우 hr 멤버는 NS_E_LICENSE_REQUIRED, NS_E_LICENSE_OUTOFDATE 또는 NS_E_LICENSE_INCORRECT_RIGHTS. 이러한 오류는 wszURL 멤버의 URL로 이동하여 새 라이선스를 획득해야 임을 나타냅니다.
WMT_ACQUIRE_LICENSE 이벤트의 경우 라이선스를 성공적으로 획득하면 hr 멤버가 SUCCEEDED 매크로를 전달합니다. 자동 획득 시도 후 이 이벤트가 수신되고 hr 이 NS_E_DRM_LICENSE_NOTACQUIRED 동일한 경우 이 라이선스에 대한 라이선스 서버에서 비사음 취득만 지원됨을 나타냅니다.
Audioplayer 샘플 애플리케이션은 이 구조에서 반환된 정보를 올바르게 사용하는 방법을 보여 줍니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 |
Windows 2000 Server[데스크톱 앱만] |
버전 |
Windows Media Format 7 SDK 이상 버전의 SDK |
헤더 |
|