Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
 Аватар для FreeZon
8 / 10 / 8
Регистрация: 30.12.2013
Сообщений: 577

Закрыть процесс или убить для применения обновлений

26.10.2014, 18:32. Показов 1134. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, подскажите как убить процесс зная его AppName ( System.Reflection.Assembly.GetExecutingA ssembly().GetName().Name; )

Просто пишу модуль обновления, хочу чтобы при запуске этого модуля, он закрывал основную программу. А AppName основной программы я естественно знаю.
И чтобы модуль обновления ждал. пока закроется основная программа, прежде чем загрузить обновление
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.10.2014, 18:32
Ответы с готовыми решениями:

убить процесс
как убить процесс на по нажатию на кнопку помогите

Убить процесс
Кто ни будь знает как можно программно убить процесс ?

убить процесс
Господа как программно убить процесс зная его название? Заранее всем огромное спасибо!!!

9
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
26.10.2014, 19:35
Цитата Сообщение от FreeZon Посмотреть сообщение
Просто пишу модуль обновления, хочу чтобы при запуске этого модуля, он закрывал основную программу.
Может разумнее было бы реализовать простейшее межпроцессовое "общение", чтобы модуль обновления говорил программе: "закройся, я тебя сейчас обновлять буду"? А в программе отлавливать это сообщение и корректно завершать работу.
На случай, если программа делает что-то интересное, чтобы она имела возможность это доделать: дописать файл с настройками до конца, а не наполовину, например.
0
 Аватар для FreeZon
8 / 10 / 8
Регистрация: 30.12.2013
Сообщений: 577
26.10.2014, 19:37  [ТС]
Цитата Сообщение от kolorotur Посмотреть сообщение
"общение"
дыы.. как?!
0
296 / 259 / 107
Регистрация: 26.10.2012
Сообщений: 809
26.10.2014, 19:38
Перебором всех процессов через Process.GetProcesses()
C#
1
2
3
4
Process GetProcessByAppName(string appName)
{
     return Process.GetProcesses().FirstOrDefault(pr => appName == Path.GetFileName(pr.MainModule.FileName));
}
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
26.10.2014, 19:41
Цитата Сообщение от FreeZon Посмотреть сообщение
как?!
Возможностей — море, от простейшего файла до технологий типа WCF.
Один из простейших методов — через IpcChannel.
По ссылке в самом низу примеры.
0
 Аватар для FreeZon
8 / 10 / 8
Регистрация: 30.12.2013
Сообщений: 577
26.10.2014, 20:21  [ТС]
Цитата Сообщение от jetyb Посмотреть сообщение
Process GetProcessByAppName(string appName)
{
* * *
C#
1
return Process.GetProcesses().FirstOrDefault(pr => appName == Path.GetFileName(pr.MainModule.FileName));
}
И что он здесь возвращает? Имя файла? Или что?
0
296 / 259 / 107
Регистрация: 26.10.2012
Сообщений: 809
26.10.2014, 21:06
Что и требовалось: экземпляр класса Process
http://msdn.microsoft.com/en-u... 10%29.aspx
у которого есть метод Kill - немедленно завершить.

Добавлено через 19 минут
И кстати еще ... убедись что ты убиваешь не сам себя (т.е. Process.GetCurrentProcess() - возвращает текущий процесс) сверкой по полю Process.Id
0
 Аватар для FreeZon
8 / 10 / 8
Регистрация: 30.12.2013
Сообщений: 577
26.10.2014, 21:07  [ТС]
Цитата Сообщение от jetyb Посмотреть сообщение
И кстати еще ... убедись что ты убиваешь не сам себя (т.е. Process.GetCurrentProcess() - возвращает текущий процесс) сверкой по полю Process.Id
Что это возвращает?
C#
1
Process.GetProcesses().FirstOrDefault(pr => appName == Path.GetFileName(pr.MainModule.FileName));
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
27.10.2014, 01:14
Цитата Сообщение от FreeZon Посмотреть сообщение
дыы.. как?!
Передача значения переменной в другую программу
0
0 / 0 / 2
Регистрация: 07.11.2014
Сообщений: 19
07.11.2014, 21:49
"Убить" процесс можно с помощью функции Kill у класса Process, а именно таким кодом:

C#
1
2
3
4
            foreach (Process pr in Process.GetProcessesByName(Название_вашего_процесса))
            {
                pr.Kill();
            }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.11.2014, 21:49
Помогаю со студенческими работами здесь

Убить процесс
командой lsof -i :8083 нахожу процесс COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 7008 root 45u IPv6 37205...

убить процесс
На win serv 2008 R2 Standart 64 80й порт занимает некий процесс с PID 4 Часть вывода netstat -anobp TCP ...

(C# -> VB) Убить процесс
Мне необходимо убить процесс, если он запущен. Код нужен для Visual Basic. На C# это выглядит так: if...

Убить процесс.
Эта тема не раз обсуждалась, но я ни как не могу убить процесс. Я нашел много примеров для C#. Как это сделать в Visual С++ с помощью...

убить процесс
Уважаемые форумчане, Скажите пожалуйста, как убить такие процессы? foreach (Process p in Process.GetProcesses( ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru