Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
1-16265
Taras
2004-01-24 20:25
2004.02.06
Приложение в стиле Win XP


4-16835
Suharew
2003-12-02 21:33
2004.02.06
Заражение Exe файла


1-16364
denis24
2004-01-24 11:04
2004.02.06
dbgrid.onMouseDown


3-16062
_sulent
2004-01-12 14:08
2004.02.06
Помогите народ, пожалуйста


7-16748
Andrew287
2003-11-21 01:39
2004.02.06
Остановка службы




   Наверх