Доброго времени суток! Когда я в Windows7 извлекаю USB Flash у меня продолжает гореть светодиод, мне надо его выключить программно. Это вообще возможно, если да, то как?
Нашёл функции, но не нашёл как их декларировать и пример использования. Помогите пожалуйста. SetupDiRemoveDevice или SetupDiCallClassInstaller(DIF_REMOVE,
Ничего тебе функции не дадут. Ты когда в Windows делаешь безопасное отключение - устройство расконфигурируется. Гасить при этом светодиод или нет (его может вообще и не быть) заложено в прошивке устройства. Если оно светодиод не гасит, то погасить командами с PC ты ничего не сможешь. Короче индикация там независимая и с PC не управляется, это тебе не светодиоды на клавиатуре
да если он не гаснет, то мне кажется он тупо к питанию подцеплен да и всё. пока есть питание - он горит.
Питание чего? Так-то можно вообще весь хост-контроллер вырубить, но оно тебе так надо что ли? Да и толку от этого все равно не будет это тоже самое, что просто флешку выдернуть все.
Нет, на USB питание отключить нельзя. Питание сигнальных линий - можно, питание +5 (которое собственно питание и есть) - нет. Можно и без контроллера, ну и даже если через контроллер, без питания он гореть всё равно ведь не будет
Скорее всего будет, зависит от разводки на матплате. Если подключена дежурка, то будет даже при выключенном ПК (не из розетки ясное дело ). А часто именно дежурку и подключают чтоб телефоны и т.п. заряжать не включая комп.
Все таки я думаю, что при огромном желании отрубить можно на некоторых сис. платах, другое дело, что для этого скорее всего придется много всего поотрубать и возможно еще "поколдовать" с ACPI. Собственно после этого, чтобы флешка заработала придется либо все это дело опять включать, либо в порт управляемый другим хост-контроллером переставить.