![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| nickolay1979 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 3.8.2008 Репутация: нет Всего: нет |
Здравствуйте!
Требуется программно отключить, а потом подключить USB-устройство (FT245R) подобно пунктам меню Диспетчера устройств "Отключить" и "Задействовать". Как это проще всего сделать? Как я понял надо использовать SetupApi. Скачал. Подключил. Пробуем вызывать функции...
При вызове SetupDiGetClassDevs получаем: 'Access Violation at address 00000000. Read of address 0000000.' С чем это связано? Что-то с компиляцией модулей? |
|||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 21 Всего: 32 |
Что скачал и как подключил догадываться самостоятельно ? По сабжу: LoadSetupApi ? |
|||
|
||||
| nickolay1979 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 3.8.2008 Репутация: нет Всего: нет |
Извиняюсь за краткость! Скачал JEDI. Задал пути к папкам. LoadSetupApi через некоторое время сделал Теперь ошибок нет. Интересует алгоритм и код программы, с помощью которой можно включать и отключать устройства. |
|||
|
||||
| nickolay1979 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 3.8.2008 Репутация: нет Всего: нет |
Привожу свой код функции (работоспособный), которая выключает/включает устройство по коду экземпляра устройства.
Критика и полезные советы очень приветствуются. Хотелось бы в результате обсуждения получить не только работоспособный, но и простой, красивый и оптимизированный код.
Попутно - несколько вопросов. 1. При вызове моей функции с параметром False для отключении устройства N раз подряд, чтобы включить устройство приходится вызывать эту функцию с параметром True тоже N раз подряд. Как будто где-то есть счётчик включения/выключения... Почему и зачем? 2. Хотелось бы прояснить работу SetupDiGetClassDevs. Без флага DIGCF_DEVICEINTERFACE - моя функция не работает. Хотя в других примерах видел вызывы и без этого флага (с параметром Enumerator!). Не понятна связь между параметром Enumerator и флагом DIGCF_DEVICEINTERFACE. 3. Хотелось бы знать как можно назвать по-русски следующие структуры, используемые при вызове функций: HDEVINFO (хендл на структуру ...), TSPDevInfoData (структура ...), TSPPropChangeParams (структура...). Не могу перевести нормально, а название поиметь хочется. |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |