Выполнение обнаружения близости
Функция, связанная с этой страницей, Windows Media Format 11 SDK, является устаревшей возможностью. Это было заменено на Источник-Читатель и Приемник-Запись. средства чтения источников и записи приемника оптимизированы для Windows 10 и Windows 11. Microsoft настоятельно рекомендует использовать новый код Source Reader и Sink Writer вместо Windows Media Format 11 SDK, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Прежде чем передавать зашифрованные данные на зарегистрированное устройство в протоколе DRM 10 windows Media для сетевых устройств, необходимо выполнить процесс, называемый обнаружением близкого взаимодействия (также называемой проверкой). Этот процесс включает отправку сообщений на устройство и получение ответов. Время, необходимое для получения ответа, используется для определения того, находится ли устройство "близко" к компьютеру в сети для получения безопасных данных. Подтверждение того, что устройство физически близко к клиентскому компьютеру в сети, помогает предотвратить спуфинирование и другой несанкционированный доступ.
Когда обнаружение близости успешно завершено, устройство считается действительным. Можно проверить, является ли устройство допустимым, вызвав метод IWMRegisteredDevice::IsValid. Устройства должны проверяться каждые 48 часов. Устройство, которое прошло проверку более чем за 48 часов до запуска программы, должно быть повторно проверено путем выполнения процесса обнаружения близости.
Чтобы выполнить обнаружение приближения, необходимо установить связь с устройством, а затем вызвать метод IWMProximityDetection::StartDetection. Процесс обнаружения выполняется асинхронно внутренними компонентами DRM пакета SDK для формата Windows Media. Приложение должно включать реализацию интерфейса IWMStatusCallback для обработки сообщений обнаружения близости.
Существует два сообщения, отправляемые процессом обнаружения близкого взаимодействия: результатное сообщение и сообщение о завершении.
Сообщение о результатах, WMT_PROXIMITY_RESULT, отправляется при завершении процесса обнаружения. Параметр hr метода обратного вызова OnStatus указывает, было ли найдено устройство достаточно близко к клиентскому компьютеру. Если параметр hr сообщения результата указывает на успешность, параметр pValue содержит DWORD, указывающий измеренную задержку устройства в миллисекундах.
Сообщение о завершении, WMT_PROXIMITY_COMPLETED, отправляется при завершении обнаружения. Вы должны освободить интерфейс IWMProximityDetection только после получения этого сообщения.
При успешном обнаружении близости для устройства база данных регистрации устройств автоматически обновляется. Последующие вызовы IWMRegisteredDevice::IsValid возвращают TRUE, пока не пройдет 48 часов, и устройство должно быть повторно подтверждено.
Примечание DRM не поддерживается x64-версией этого SDK-пакета.
Связанные разделы