Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.07;
Скачать: CL | DM;

Вниз

Проверка процессов   Найти похожие ветки 

 
ArchValentin ©   (2006-02-12 08:09) [0]

Доброго всем времени суток. Проблема такая, у меня есть путь типа c:\Прога\proga.exe, как можно проверить, запущена ли она. Заранее благодарен


 
kaZaNoVa ©   (2006-02-12 11:33) [1]

в uses добавь Tlhelp32, PsApi

Function IfRunProgram(ProgramFullName:string):Boolean;
var
hSnapshot, hProcess: THandle;
PE: TProcessEntry32;
Path: array [0..MAX_PATH] of Char;
begin
Result:=False;
hSnapshot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if hSnapshot <> INVALID_HANDLE_VALUE then
begin
  PE.dwSize := sizeof(PE);
  if Process32First(hSnapshot, PE) then
    repeat
      hProcess := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, FALSE, PE.th32ProcessID);
      if GetModuleFileNameEx(hProcess, 0, Path, sizeof(Path)) <> 0 then
        if (pos(UpperCase(ProgramFullName),UpperCase(Path))>0  ) then Result:= True;
      CloseHandle(hProcess)
    until not Process32Next(hSnapshot, PE);
    CloseHandle(hSnapshot)
end
end;

//пример использования

If IfRunProgram("Explorer") then MessageBox(0,"Программа запущена","Внимание",0);



 
maxim161 ©   (2006-02-12 17:29) [2]

Так это надо в каком-нибудб таймере ставить?


 
kaZaNoVa ©   (2006-02-13 00:22) [3]

maxim161 ©   (12.02.06 17:29) [2]
ага


 
kaZaNoVa ©   (2006-02-13 12:14) [4]

да, чуть не забыл .. код  [1] может некорректно выдавать начало пути.. поэтому лучше писать тока конец . .например If IfRunProgram("proga.exe") then MessageBox(0,"Программа запущена","Внимание",0);




Страницы: 1 вся ветка

Текущий архив: 2006.05.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.052 c
2-1145533315
jiurafgdfg
2006-04-20 15:41
2006.05.07
Обьясните!!!Что-то непонятное как считает Delphi?


3-1142327642
hursand
2006-03-14 12:14
2006.05.07
Как бросит текставой файле из запроса таблицей InterBase


1-1143918743
Sphinx
2006-04-01 23:12
2006.05.07
Определение собственного менеджера памяти


15-1145012682
tsa
2006-04-14 15:04
2006.05.07
Синхронизация часов компьютера


10-1118573883
SerJ23
2005-06-12 14:58
2006.05.07
определение номера абзаца