Цитата(juvf @ Jul 22 2013, 13:04)

Есть устройство, подключаемое через USB. В устройстве стоит FTDI (VCP) с дефолтными драйверами. Соответственно устройство в компе появляется как виртуальный компорт. Чтобы начать с устройством работать, необходимо вычислить имя компорта. Но можно в микросхему FTDI залить свои данные и на комп поставить свой(правленный от FTDI) драйвер. Тогда в системе будет появляться не просто "USB<->RS232 преобразователь (COM38)", а например "MyDevice (COM38)".
Как программно перебрать все порты в системе и найти тот компорт, у которого "id" == MyDevice ?
ps для Windows и для Linux.
Не до конца уверен в том что говорю, но под Linux можно сделать соответствие между именем и устройством с помощью udev, если устройства втыкаются каждый раз в один и тот же физ порт. Или был вариант несколько модемов с интерфейсом com over usb, в системе они могли возникнуть с другими именами нежели забиты строкой в программе. был вариант отправлять команду вроде version и парсить ответ и определять кто есть кто. но под линукс должен уметь все делать udev. под windows не знаю, но сколько программ не видел (с gui, пользователь взаимодействует с по) везде вручную выбирался ком порт.