История изменений
Исправление KivApple, (текущая версия) :
Ну если решать проблему централизованно, то можно написать специальный драйвер-прокси. Он бы садился на определённый VID-PID, запрашивал специальным запросом GUID устройства, искал по своему списку нужный драйвер и перенаправлял все запросы к нему. То есть такое расширение USB-стека винды. Не вижу причин почему это не возможно. Разве что драйвера девайсов придётся писать немного иначе (регистрироваться не в штатном виндовом стеке USB, а в драйвере-прокси).
Или даже радикальный вариант. Перехватывать устройства с ЛЮБЫМ VID-PID. Если в дескрипторах есть GUID, то забиваем на VID-PID и ищем драйвер по-своему, а затем проксируем в него все запросы, иначе возвращаем управление системе.
Исходная версия KivApple, :
Ну если решать проблему централизованно, то можно написать специальный драйвер-прокси. Он бы садился на определённый VID-PID, запрашивал специальным запросом GUID устройства, искал по своему списку нужный драйвер и перенаправлял все запросы в нему. То есть такое расширение USB-стека винды. Не вижу причин почему это не возможно. Разве что драйвера девайсов придётся писать немного иначе (регистрироваться не в штатном виндовом стеке USB, а в драйвере-прокси).