Я в основном понимаю вас, C ++, пожалуйста, не отвлекайтесь, потому что я пишу на Delphi.
У меня есть стабильный метод листинга USB, который обращается ко всем моим USB-устройствам
Я получаю devicepath
, и эта структура:
TSPDevInfoData = packed record
Size: DWORD;
ClassGuid: TGUID;
DevInst: DWORD; // DEVINST handle
Reserved: DWord;
end;
Я успешно получаю ProductID
и VenderID
из моего DevicePath
Перечисляет все USB-устройства, подключенные к компьютеру одновременно
Это позволяет мне стабильно получать доступ к данным реестра для каждого устройства.
Чего мне не хватает, так это маленького направления
Может ли дружественное имя быть записано в подключенные микросхемы USB микропрограммным обеспечением? (Я думаю об этом, чтобы идентифицировать устройство еще дальше, или это поможет идентифицировать устройства массовой передачи данных, такие как карты памяти и камеры) *
Могу ли я использовать SPDRP_REMOVAL_POLICY_OVERRIDE, чтобы как-то сбросить эти политики
Что еще я могу сделать с деталями реестра.
Определение, когда кто-то отключает устройство от сети, используемое программой (в стандарте Windows XP)
Я использовал документированное событие Windows, которое не отвечало.
Могу ли я прочитать значение реестра, чтобы определить, все еще ли оно подключено?
с использованием CreateFileA (DevicePath) для отправки и получения данных
Я читал, когда кто-то отключает в середине передачи данных его трудные ресурсы очистки.
что IoCreateDevice может сделать для меня и как его использовать для этой задачи
Эта двусторонняя точка состояния соединения и ситуации блокировки системы очень важна.
Кто-нибудь читал что-нибудь об этой теме в последнее время?
Мои цели состоят в том, чтобы
1. список подключенных USB-устройств
идентифицирует в разработке Micro Controller из всего остального
стабильно и быстро отправлять и получать данные в пределах контроллера
Нет блокировки передачи данных
Примечание. Я не пользуюсь никакими пакетами обновлений
Я понимаю, что все USB есть в ANSI, когда Windows XP не, а .Net все о ANSI
(что за пустая трата памяти)
Я планирую продолжить этот проект в .net позже в качестве дополнения.
MSDN дает мне структуры и функции и что должно связывать с тем, что хорошо, но мало что сказать к тому, к чему они привыкли.
То, что доступно на моем языке, Delphi слишком дорого, так как требует значительного снижения цен.