2015-12-15 1 views
0

Я запускаю серверный сокет project пытается прослушивать в порту 2201. Когда я запускаю проект в первый раз, он работает правильно, и я получил сообщение:Процесс не может получить доступ к файлу .exe, потому что он используется другим процессом

«Ожидание подключения ...»

Когда я закрываю проект и пытаются повторно запустить я получаю следующее сообщение:

ошибка CS2012: не удается открыть «C: ... \ ... \ ... sockets.exe» для записи - «Процесс не может получить доступ к файлу» C: ... \ ... \ ... sockets.exe ', потому что он используется другим процессом.'

Сокеты - это название проекта. Что здесь происходит?

EDIT: Могу ли я создать метод stopListening с параллельным методом startListening()? Я получил то же сообщение, когда сервер не прослушивает.

+0

Отключите свои антивирусные программы или сделайте исключение и повторите попытку. Если это Avast или AVG, то избавитесь от него полностью. –

ответ

1

Вы пытаетесь перекомпилировать его и по этой причине файл должен быть открыт для записи. Вероятно, программа не завершена, только ее окно скрыто и по этой причине оно заблокировано ОС. Как вы «закрываете проект»?

+0

Да, смысл. Но как я могу остановить программу? Что делать, если я хочу прекратить прослушивание с этого порта? –

+0

@JoseRamon вызывает метод 'Close()', если это WinForm. Стоп-порт прослушивания и программа закрытия (exe) - это разные вещи. – i486

+0

Это консольное приложение. Как я могу остановить порт регистрации? –

1

Возможно, вы не располагаете методом надлежащим образом? Как и потоки, вы можете обернуть их в оператор using, чтобы они правильно распоряжались.

Смежные вопросы

 Смежные вопросы