Цитата(firstvald @ Apr 28 2011, 20:09)

Встала задача понять, с каким портом работает в данный момент программа: с честным COM портом или с виртуальным. Как это проще сделать?
По-видимому, есть только единственный способ это узнать - через то имя, которое пишется напротив COM-порта в списке портов, который кажет на древе Device Manager. Внутри программы это имя можно узнать через функцию SetupDiGetDeviceRegistryProperty().
Опс! Есть и другой способ - через GUID, у них гуиды разные:
у виртуального - GUID_VIRTUAL_COMPORT
у натурального - GUID_DEVINTERFACE_COMPORT