Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Как перезапустить процесс зная его имя

-

Вопросы и ответы, обсуждения

- Ваши вопросы по Pascal/Delphi только в данном разделе

Ответ
 
Опции темы
Старый 29.04.2011, 23:08   #1
Заблокирован
 Разведчик
Аватар для Чювашка
 
Чювашка никому не известный тип
Регистрация: 24.04.2011
Сообщений: 4
Популярность: 10
Сказал(а) спасибо: 7
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Как перезапустить процесс зная его имя

Мне надо перезапустить процесс зная его имя.
В поисковике не нашол, нашол только по закрытию.
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
PostMessage(FindWindow(Nil, 'Имя программы'), WM_QUIT, 0, 0);
end;
Мне надо что-то простенькое.
  Ответить с цитированием
Старый 29.04.2011, 23:20   #2
Знаток Dark Orbit
 Рыцарь-защитник
Аватар для Mebius
 
Mebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского СоюзаMebius трижды герой Советского Союза
Регистрация: 14.06.2010
Сообщений: 584
Популярность: 6626
Сказал(а) спасибо: 86
Поблагодарили 847 раз(а) в 266 сообщениях
Отправить сообщение для Mebius с помощью ICQ Отправить сообщение для Mebius с помощью Skype™
 
По умолчанию Re: Как перезапустить процесс зная его имя

Цитата:
Сообщение от ЧювашкаПосмотреть сообщение
Мне надо перезапустить процесс зная его имя.
В поисковике не нашол, нашол только по закрытию.
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
PostMessage(FindWindow(Nil, 'Имя программы'), WM_QUIT, 0, 0);
end;
Мне надо что-то простенькое.

а если таких процессов штук 10-15? или вы 100% уверены что процесс будет только в еденичном экземпляре?
  Ответить с цитированием
Старый 29.04.2011, 23:25   #3
Заблокирован
 Разведчик
Аватар для Чювашка
 
Чювашка никому не известный тип
Регистрация: 24.04.2011
Сообщений: 4
Популярность: 10
Сказал(а) спасибо: 7
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Как перезапустить процесс зная его имя

Цитата:
Сообщение от MebiusПосмотреть сообщение
а если таких процессов штук 10-15? или вы 100% уверены что процесс будет только в еденичном экземпляре?

Он в еденичном экземпляре.
  Ответить с цитированием
Старый 29.04.2011, 23:53   #4
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,004
Популярность: 25098
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 110
Поблагодарили 830 раз(а) в 395 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию Re: Как перезапустить процесс зная его имя

А если процесс не имеет окна?)

Ладно, в любом случае алгоритм таков.
1. Вырубить процесс. ([Ссылки могут видеть только зарегистрированные пользователи. ])
2. Запустить процесс. (CreateProcess, ShellExecute, WinExec, в общем что понравится).
  Ответить с цитированием
Пользователь сказал cпасибо:
Чювашка (30.04.2011)
Старый 30.04.2011, 01:02   #5
Заблокирован
 Разведчик
Аватар для Чювашка
 
Чювашка никому не известный тип
Регистрация: 24.04.2011
Сообщений: 4
Популярность: 10
Сказал(а) спасибо: 7
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Как перезапустить процесс зная его имя

ShellExecute, WinExec - для них нужно указывать путь.
А с CreateProcess так не разобрался.
  Ответить с цитированием
Старый 30.04.2011, 08:33   #6
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,004
Популярность: 25098
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 110
Поблагодарили 830 раз(а) в 395 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию Re: Как перезапустить процесс зная его имя

Путь можно определить из процесса.
GetProcessName (если мне не изменил память)
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] как узнать мэил , зная лог и пасс dibo Общение и обсуждение Perfect World 10 27.04.2011 11:00
Можно ли бриться зная только ИД и Аут? Sarafan Общение и обсуждение (Тюряга ВК) 11 11.03.2011 10:08
[Помогите!] Как зайти на Ак зная только SID 777Алексей777 Общение и обсуждение 17 15.12.2010 16:52
[Руководство] Входим на акк зная только SID Soutch_park Dark Orbit 11 06.09.2010 21:49

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 04:01.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net