Я пытаюсь выяснить, кто блокирует мой COM-порт. Попробованный для поиска, но не мог найти способ понять это. Я использую XP.
Задавался вопросом, обеспечивает ли утилита 'Process Explorer' что-то для того же, но не могла бы найти что-то помощью.
Существует ли команда, которая разоблачает все приложения, связанные до определенных COM-портов в системе?
Спасибо
Да, в Проводнике Процесса приложению с помощью порта назовут дескриптор "Файла" \Device\SerialN
где N является основанным на нуле индексом.
Обновление:
"N" в "serialN" не является числом COM-порта, это - индекс в список активных портов. Если у Вас только будет один используемый порт, то это всегда(?) будет "serial0", и второй, который Вы открываете, будет "serial1". При открытии их в противоположном порядке числа будут инвертированы.
Проверьте QueryDosDevice API. Необходимо ли смочь выполнить итерации через COM1...COM? и получите "\device\serialN" запись для каждого открытого порта. Я не знаю об утилите, которая сделает это, Вам, возможно, понадобится к самокрутке.
Здесь существует более определенный для COM-порта пример.