Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2011, 13:38   #1
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
Вопрос Проверить запустилось ли приложение

Так я запускаю приложения
Код:
ShellExecute(0, 'open', 'Project1.exe', nil, 'C:\New project', SW_SHOWNORMAL);
Как проверить, что приложение действительно запустилось и сообщить об этом?
P.S. Запуск производится на удалённом компьютере. И будет ли корректно работаьб данный способ запуска на Windows 7 32 bit (заметил что не работает, но я могу ошибаться)?
Shouldercannon вне форума Ответить с цитированием
Старый 20.04.2011, 13:55   #2
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Здравствуйте
Посмотрите здесь
http://www.codenet.ru/progr/delphi/stat/wind.php
До свидания
OlegVE вне форума Ответить с цитированием
Старый 20.04.2011, 14:19   #3
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Вот немного переделанная ф-ия из delphiWorld
Код:
uses Tlhelp32;

function FindTask(ExeFileName: string): boolean;
const
  PROCESS_TERMINATE=$0001;
var
  ContinueLoop: BOOL;
  FSnapshotHandle: THandle;
  FProcessEntry32: TProcessEntry32;
begin
  result := false;

  FSnapshotHandle := CreateToolhelp32Snapshot
  (TH32CS_SNAPPROCESS, 0);
  FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
  ContinueLoop := Process32First(FSnapshotHandle,
  FProcessEntry32);

  while integer(ContinueLoop) <> 0 do
  begin
    if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
    UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
    UpperCase(ExeFileName))) then
    Result := true;
    ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
  end;
  CloseHandle(FSnapshotHandle);
end;
а применить можно так:
if FindTask('Project1.exe') then ....//если процесс запущен
SERG1980 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверить программку на С++ sir.andrey Помощь студентам 1 16.11.2010 20:37
Задача:в вижуал с++ Разработать приложение-сервер и приложение (смотри дальше сообщение) Мила777 Фриланс 2 21.10.2009 11:05
Проверить выражение fosto Общие вопросы Delphi 1 16.12.2008 01:52
Как проверить запущено приложение или нет? kiber0net0 Общие вопросы Delphi 2 18.09.2008 19:48
Проверить, открыто ли приложение Михаил Юрьевич Win Api 4 02.06.2008 08:20