| Предыдущий | Следующий |
| SPAPI_E_DEVICE_INTERFACE_ACTIVE | SPAPI_E_BAD_INTERFACE_INSTALLSECT |
SPAPI_E_DEVICE_INTERFACE_REMOVED
Запись перечисления пережила зарегистрированный интерфейс
SPAPI_E_DEVICE_INTERFACE_REMOVED указывает, что элемент SP_DEVICE_INTERFACE_DATA больше не ссылается на пригодный для использования зарегистрированный интерфейс. Удаление, неожиданное удаление, повторное сканирование или параллельная работа установщика могут сделать недействительным элемент, сохранённый из ранее созданного набора сведений об устройствах.
Этот статус нельзя исправить очисткой флага удаления в памяти. Состоянием интерфейса управляет SetupAPI, а пути устройств не являются долговечными идентификаторами. Приложение должно отбросить устаревшие данные, заново создать набор сведений об устройствах и определить, представляет ли новый интерфейс ту же физическую или логическую функцию.
Восстанавливайтесь повторным перечислением авторитетного состояния
- Проверяйте флаг SPINT_REMOVED до выполнения последующих операций.
- Уничтожайте и заново создавайте устаревшие наборы сведений об устройствах после изменения топологии.
- Используйте свойства экземпляра устройства и класса интерфейса для сопоставления заново перечисленной замены.
- Обрабатывайте уведомления об удалении, чтобы рабочие потоки своевременно прекращали использовать пути и структуры интерфейсов.
Ссылки
- Microsoft: флаги активности и удаления интерфейса
- Microsoft: SetupDiOpenDeviceInterface
- Microsoft: уведомления об изменении интерфейса устройства
Нужно найти другой код? Найти другой код состояния или ошибки.