IWMDMStorageGlobals::GetSerialNumber 메서드(mswmdm.h)
GetSerialNumber 메서드는 스토리지 매체를 고유하게 식별하는 일련 번호를 검색합니다.
HRESULT GetSerialNumber(
[out] PWMDMID pSerialNum,
[in, out] BYTE [8] abMac
);
[out] pSerialNum
일련 번호 정보를 지정하는 WMDMID 구조체에 대한 포인터입니다.
[in, out] abMac
이 메서드의 매개 변수 데이터에 대한 메시지 인증 코드를 지정하는 바이트 배열입니다. 이 메모리는 호출자가 할당하고 해제합니다.
이 메서드는 HRESULT를 반환합니다. Windows Media 장치 관리자 모든 인터페이스 메서드는 다음 오류 코드 클래스를 반환할 수 있습니다.
- 표준 COM 오류 코드
- HRESULT 값으로 변환된 Windows 오류 코드
- Windows Media 장치 관리자 오류 코드
일부 스토리지 미디어에서 일련 번호를 지원하는 것은 아니지만 Microsoft 디지털 권한 관리를 지원하려면 일련 번호가 필요합니다. 스토리지 매체가 고유한 일련 번호를 보고할 수 없는 경우 Microsoft 디지털 권한 관리로 보호되는 콘텐츠를 이 스토리지 매체로 전송할 수 없습니다. 반환 코드를 확인하여 스토리지 매체가 이 지원을 제공하는지 여부를 확인해야 합니다.
다음 C++ 코드는 루트 스토리지 개체의 일련 번호를 검색하고 MAC을 확인합니다.
hr = m_pStorageGlobals->GetSerialNumber(&m_SerialNumber, (BYTE*)abMAC);
if (SUCCEEDED(hr))
{
// Verify the MAC using the CSecureChannelClient member.
m_pSAC->MACInit(&hMAC);
m_pSAC->MACUpdate(hMAC, (BYTE*)(&m_SerialNumber), sizeof(m_SerialNumber));
m_pSAC->MACFinal(hMAC, (BYTE*)abMACVerify);
if (memcmp(abMACVerify, abMAC, sizeof(abMAC)) != 0)
{
hr = E_FAIL;
}
}
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | mswmdm.h |
라이브러리 | Mssachlp.lib |