Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
извлекаемые устройства — это устройства, которые можно вставить в док-станцию и вынуть из док-станции. Как правило, питание шины извлекаемого устройства должно быть отключено, прежде чем устройство можно будет удалить.
Если устройство извлекаемое, драйвер шины устройства должен задать элемент EjectSupported в структуре WDF_DEVICE_PNP_CAPABILITIES устройства.
Когда контроллер шины определяет, что одно из перечисленных дочерних устройств должно быть извлечено, он вызывает либо WdfPdoRequestEject или WdfChildListRequestChildEject. Например, водитель автобуса может обнаружить, что пользователь нажал кнопку выброса.
Когда драйвер вызывает WdfChildListRequestChildEject или WdfPdoRequestEject, диспетчер PnP использует сценарий удаления упорядоченного удаления сценария, чтобы сообщить драйверам устройства, что устройство удаляется. После того, как платформа вызовет функцию обратного вызова EvtDeviceReleaseHardware в драйвере шины для шины устройства, платформа вызывает функцию обратного вызова EvtDeviceEject в драйвере шины, которая выполняет любые операции, необходимые для физического извлечения устройства.
Если извлечение вашего устройства вызывает извлечение других устройств, ваш драйвер шины может поддерживать список отношений извлечения . Когда пользователь удаляет устройство, диспетчер PnP сообщает драйверам устройств в списке, что их устройства также удаляются. Для поддержания списка отношений извлечения драйвер шины может использовать методы WdfPdoAddEjectionRelationsPhysicalDevice, WdfPdoRemoveEjectionRelationsPhysicalDeviceи WdfPdoClearEjectionRelationsDevices.
Если устройство может быть заблокировано на док-станции, драйвер шины должен задать элемент LockSupported в структуре WDF_DEVICE_PNP_CAPABILITIES устройства. Драйвер шины также должен предоставить функцию обратного вызова EvtDeviceSetLock, которая блокирует устройство для отключения извлечения или разблокировки устройства для включения извлечения.