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

Вниз

Как определить сколько времени запущена программа   Найти похожие ветки 

 
baataars   (2003-11-14 19:32) [0]

?


 
}{enon ©   (2003-11-14 20:09) [1]

1)Создать таймер, в котором каждые Х секунд прибавлять Х к переменной. Минус в том, что через некоторое время происходит "сбой" - реакция таймера не мгновенна, а потому время будет не очень точно.
2)Получить системное время (функция Now(), либо ищи по хелпу). Проблема возникнет, если юзер врубит спящий режим - тогда комп будет выключен, а время будет идти.


 
baataars   (2003-11-14 21:43) [2]

Сорри что не правильно сформировал вопрос.

нужно получить сколько времени запущена чужая программа (чужой exe, исходников нету) и именно виндовая программа.

У меня задача - проконтролировать чужую программу - если она работает больше 15 минут - послать ей kill.

как получить список процессов и найти нужную программу я знаю и знаю как послать ей килл, интересно - можно ли вообще получить время когда была запущена программа или сколько времени прошло с момента запуска, потому что таскманагер это не показывает. и prcview тож не показывает.


 
Дубинин Алексей ©   (2003-11-15 00:48) [3]

Возможен такой выход из этой проблемы. Пусть у тебя стоит программа менеджер которая следит за другими программами. Пишешь ловушку, ставишь ее на WH_SHELL. Как запустилась программа...получил в wParam ее хэндл...определил что это за программа..если та которая угу, то начинаешь считать время...после когда время кончилось уибваешь ее...не забывая вновь определить а не выключили ли ее. Вот так, например, пойдет? :-))


 
default ©   (2003-11-15 01:11) [4]

Дубинин Алексей © (15.11.03 00:48) [3]
а если чужая прога была запущена раньше его?


 
DeadMeat ©   (2003-11-15 01:14) [5]

> default © (15.11.03 01:11) [4]
> а если чужая прога была запущена раньше его?
Выход...
Грузиться через ветку RunServices (в случае Win98/ME..., а если Win2k/XP, то просто Run), получить список процессов при запуске, и если там висит эта прога, то начинать отсчёт с нуля..., т.к. всё только начало работать...


 
default ©   (2003-11-15 01:17) [6]

WaitForSingleObject
"Process The CreateProcess or OpenProcess function returns the handle. A process object"s state is signaled when the process terminates."
хендл процесса ты писал знаешь как получить
вроде дело за малым


 
default ©   (2003-11-15 01:21) [7]

опс, это не по теме)


 
baataars   (2003-11-21 08:49) [8]

спасибо за ответ. попробую реализовать.

Жалко что нельзя узнать через системные функции, чеж билл гейтс не предусмотрел? приходиться заново изобретать велосипед.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
3-16146
Yamaha
2004-01-15 09:24
2004.02.06
Вставка записей в TDBF


1-16354
Navi
2004-01-21 19:08
2004.02.06
Отображение полос прокрутки в StringGrid-е


4-16817
d_oleg
2003-11-28 12:23
2004.02.06
Get Application Title


1-16459
PJack
2004-01-28 22:16
2004.02.06
Создание нестандартных форм


14-16668
syte_ser78
2004-01-17 15:01
2004.02.06
Freepascal