Что делать если порт занят другой программой

Как очистить эти COM-порты? >

Номера портов COM всегда кажутся чем-то занятыми, и хотя сейчас у меня есть только 4 последовательных порта (3 по Bluetooth и один USB для RS-232), у меня есть множество COM-портов, установленных как в использовании. Я бы немного почистил этот список.

Также мне кажется, что время от времени один из принятых COM-портов освобождается, а затем одно из устройств, которые я использую, будет принимать это число, создавая путаницу, так как мне придется идти и искать его номер com в диспетчере устройств.

Ну, я просто очистил бесчисленные USB-устройства, которые когда-то были подключены к компьютеру с помощью USBDeview, и все еще проблема остается.

Очистка занятых COM портов

При присоединении абсолютно нового COM устройства или USB устройства, Windows обнаруживает благодаря Plug-n-Play и присваивает ему номер COM порта в диапазоне от 1 до 255. Если же вы подключаете устройство еще раз, ему прикрепляется тот же, зарезервированный за ним ранее COM порт. Если же вы подключаете еще одно новое устройство, то ему назначается другой незанятый номер COM порта.

Процесс не может получить доступ к файлу, так как он используется другим процессом в Windows 11 —

Некоторые программы (чаще старые), способны работать только на двухзначных номерах COM портов, и не работают с COM100 и более. Некоторые очень древние программы работают только портами с COM1-COM9. Как поступить, если устройство получило не нужный COM порт? Можно ли удалить номер зарезервированного COM порта?

Смена номера COM порта для приложения или устройства

В первую очередь стоит попробовать вручную переопределить номер COM порта для определенного COM-устройства. Предположим требуемый COM порт уже занят, и мы хотим его попробовать его освободить.

  1. Запустим диспетчер устройств (Device Manager) таким образом: set devmgr_show_nonpresent_devices=1
    start devmgmt.msc
  2. В меню консоли выберем View->Show Hidden Devices.
  3. Разверните ветку Ports (COM https://teh-fed.ru/com-port-zanjat-drugim-prilozheniem-kak-osvobodit/» target=»_blank»]teh-fed.ru[/mask_link]

    Порт занят другой программой

    Существуют разные способы решения этой задачи. Мы расскажем о двух: с помощью командной строки и Диспетчера задач (Task Manager) либо с использованием прекрасного бесплатного приложения с полным набором нужных функций.

    Способ 1: командная строка и Диспетчер задач

    Для начала нужно с помощью командной строки узнать, какие порты используются в данный момент. При этом для каждого порта указывается идентификатор процесса, которым он занят. С помощью этого идентификатора можно затем выяснить, что за приложение использует нужный порт.

    Откройте командную строку (желательно от имени администратора, чтобы увидеть все процессы) и введите следующую команду:

    Решение ошибки ассоциаций exe файла на windows 10

    Справа показаны PID – идентификаторы процессов (на скриншоте ниже они выделены белым). Найдите нужный вам порт и посмотрите, с каким идентификатором он связан. Например, на нашем скриншоте адрес 0.0.0.0:80, т. е. порт 80, связан с процессом 4708.

    Теперь просто откройте Диспетчер задач и найдите в списке нужный ИД процесса. Возможно, для этого придется использовать опцию «Отображать процессы всех пользователей» (Show Processes for All Users). Определив нужный процесс, можно его завершить (End Process), открыть расположение файла (Open File Location) или перейти к службам (Go to Service(s)).

    Способ 2: утилита CurrPorts

    Если вы не любитель командной строки и предпочли бы выяснить всю нужную информацию с помощью одной программы, рекомендуем прекрасную бесплатную утилиту CurrPorts от NirSoft – одного из наших любимых разработчиков свободного ПО.

    Просто запустите программу – и увидите все необходимые данные: процессы с полными адресами соответствующих файлов, занятые ими локальные и удаленные порты.

    Можно дважды щелкнуть на любом пункте, чтобы посмотреть подробные сведения.

    С помощью CurrPorts также можно завершить процесс, не заглядывая ради этого в Диспетчер задач.

    Добавление от 17.11.2008 03:14:

    В результате поисков выяснил, что модем использует порт COM3 и этот порт занят другим приложением.
    Исходя из этого, прошу подсказать, как мне выйти на этот порт чтобы выяснить, чем он занят.
    Трудность для меня здесь заключается в том, что в мэнеджере хардваров в списке портов этот порт не обозначен, а список начинается почему-то с СОМ5.

    Всего записей: 43 | Зарегистр. 24-01-2005 | Отправлено: 13:03 17-11-2008
    Sibirev

    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору scorpio47
    зайди в сведения о системе — компоненты — порты — последовательный. В поиске (Ctrl+F) набери нужный порт (com3) Всего записей: 54 | Зарегистр. 09-11-2008 | Отправлено: 16:19 17-11-2008

    scorpio47

    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Sibirev
    Нашёл. Но как освободить его? Всего записей: 43 | Зарегистр. 24-01-2005 | Отправлено: 22:29 17-11-2008

    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Перезагрузка системы должна помочь.
    Такие глюки бывают. Всего записей: 310 | Зарегистр. 28-08-2006 | Отправлено: 23:56 17-11-2008

    Sibirev

    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору scorpio47
    в диспетчере устройств найди то устройство, которое заняло этот порт. В свойствах выбери «Параметры порта», нажми кнопку «Дополнительно», и поменяй номер порта. Всего записей: 54 | Зарегистр. 09-11-2008 | Отправлено: 08:33 18-11-2008

    scorpio47

    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Sibirev

    в диспетчере устройств найди то устройство, которое заняло этот порт

    Дело в том, что в мэнеджере устройств отбражаются порты с 5_го по 9_й.
    В гугле я нашёл, что встроенный модем система видит как COM_порт 3.
    Я сделал (с модемом) то, что ты рекомендуешь, но, к сожалению, безуспешно.
    По умолчанию в выпадающем меню стоит порт 3.
    Далее отображаются порты с 5_го по 9_й и они заняты, но есть множество свободных. Когда я меняю на них, то получаю снова сообщения, что «эти порты могут быть заняты и выбор их может привести к проблемам с системой».
    Но, тем не менее, я попробовал несколько, но когда после их смены кликаю на «опрос модема», то опять-таки получаю изначальное сообщение, что порт занят.
    Какой-то заколдованный круг.

    Что ещё можно предпринять? Я, правда, уже задумываюсь об откате, но хоцца восстановить модем без этого.

    И вот ещё что. В справке на прогу под кодом ошибки ( 102), который я получаю при попытке отправить факс, стоит следующее:

    «Модем занят другим приложением (Er 102)
    Возможно модем используется программой, работающей с ним не через TAPI, а напрямую через COM-порт.»

    Но у меня с модемом работает только эта прога и никакая другая. И связь её с модемом осуществляется через TAPI (это настройка по умолчанию).

    Модератор: Модераторы

    Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение admspzv » 20 сен 2014, 13:43

    Re: Вопрос по опросу

    Сообщение Евгений Николаенко » 21 сен 2014, 15:03

    Re: Вопрос по опросу

    Сообщение admspzv » 22 сен 2014, 01:09

    Re: Вопрос по опросу

    Сообщение Евгений Николаенко » 22 сен 2014, 06:58

    Проблема не в RemoteApp (через него запускается только рабочее место оператора, оно вообще не работает с COM-портами). С COM-портом работает служба опроса, запущенная на компьютере SRV-1C-TERM.

    Скорее всего порт действительно блокируется каким-то процессом, давайте соберем больше исходных данных. Воспроизведите ошибку, запустите на компьютере SRV-1C-TERM утилиту ProcessExplorer и посмотрите, какой процесс использует COM1 (главное меню «Find» —> «Find Handle or DLL» введите DeviceSerial).

    P.S. В системных параметрах, на вкладке «GSM-модем» галочка «Использовать GSM-модем» установлена?

    Re: Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение admspzv » 23 сен 2014, 01:09

    Re: Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение Евгений Николаенко » 23 сен 2014, 04:10

    Re: Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение admspzv » 23 сен 2014, 10:59

    Да, к сожалению проблема не решена. Через несколько часов вновь стала появляться ошибка.
    Заметил, что ошибка занятости порта com1 появляется только тогда, когда открыто окно «настройка модемов».
    В этот момент procexp видит что порт com1 занимает процесс «настройка модемов».
    Как только закрываешь окно «настройка модемов» procexp не видит занятости порта cop1. Однако при ручном опросе модема ,после его настройки, отображается лог сообщений:

    В ответе модема нет расширенного кода ошибки. Для включения расширенных кодов ошибок настройте диспетчерский модем при помощи утилиты «Настройка модема» из меню «Сервис»

    Ошибка опроса. Не удалось установить соединение (возможно абонент не зарегистрирован в сети GSM или не удалось согласовать параметры канала связи)

    Будто ЛЭРС не сохраняет изменения, сделанные в окне «настройка модемов»

    Возможно кроме настройки модемов следует проверить еще что-то?

    Re: Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение admspzv » 24 сен 2014, 00:40

    Постараюсь собрать больше информации:
    Первый скришот procexp сделал сразу после перезагрузки модема. Была запущена служба опроса (ручной опрос) и все данные благополучно снимаются.

    Заметил одну странность, сегодня после перезапуска модема и зайдя на удаленный компьютер, попытался сделать ручной опрос, на что система сообщила о том, что порт уже используется и предложила «немедленно» освободить его. После нажатия соответствующей кнопки система начала снимать показания с прибора.

    В нашей организации установлен только диспетчерский модем, модем на приборе установлен в другой организации. Возможно у нас с ними различаются какие то настройки модемов и стоит с ними скорректировать этот вопрос?

    Re: Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение Евгений Николаенко » 24 сен 2014, 02:47

    В один момент времени с COM-портом может работать только одна программа. Это ограничение операционной системы Windows. Если вы подключились к COM-порту в утилите настройки модемов — порт блокируется и при опросе в ЛЭРС УЧЕТ вы получите ошибку «Порт COMxx занят другой программой».

    Служба опроса открывает порт в начале сеанса опроса и закрывает его при завершении сеанса, поэтому вы не видите этого в ProcessExplorer — этот момент нужно «ловить» в процессе опроса.

    Вопрос о сохранении настроек модема мы готовы обсуждать в отдельной теме. Эта тема посвящена ошибке «Порт COM1 занят другой программой или доступ к нему запрещен».

    Re: Ошибка «Порт COM1 занят другой программой или доступ к нему запрещен»

    Сообщение Евгений Николаенко » 24 сен 2014, 02:59

    Это называется «Принудительный запуск ручного опроса оператором с отменой выполняющегося задания автоматического опроса».

    Сообщение звучит так: «В данный момент все порты опроса заняты. Чтобы немедленно освободить порт опроса и запустить опрос, нажмите Немедленно». Обратите внимание, что речь идет не про COM-порт, а про порт опроса.

    Источник: automotocity.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru