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

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

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2008, 22:43   #1
student_63
Пользователь
 
Аватар для student_63
 
Регистрация: 07.11.2007
Сообщений: 92
По умолчанию Процессы

Подскажите, пожалуйста, как узнать дату, время начала и окончания процесса
Я уверен, вы согласитесь со мной... что если
со страницей 534 мы встречаемся во второй главе, то первая глава должна быть невыносимо длинной.
- ШЕРЛОК ХОЛМС
student_63 вне форума Ответить с цитированием
Старый 03.04.2008, 23:01   #2
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от student_63 Посмотреть сообщение
Подскажите, пожалуйста, как узнать дату, время начала и окончания процесса
Странные вопросы задаёте. Вот же Ваша тема: http://programmersforum.ru/showthread.php?t=16163
на слово CreateTime обратите внимание. А по-поводу времени окончания процесса.... видимо к Нострадамусу...
B_N вне форума Ответить с цитированием
Старый 04.04.2008, 10:23   #3
Ins
Форумчанин
 
Регистрация: 29.12.2007
Сообщений: 137
По умолчанию

Код:
А по-поводу времени окончания процесса.... видимо к Нострадамусу...
А вот и нет Процесс может быть уже завершен, но пока существует хотя бы одна ссылка на него (reference в ядре, или дескриптор) - объект "процесс" уничтожен не будет. Соответсвенно у этого процесса можно узнать время окончания и окончен ли он сообще. Времена (все) можно получить с помощью GetProcessTimes, а узнать, завершен ли процесс или нет - GetExitCodeProcess и анализировать результат на значение STILL_ACTIVE
Ins вне форума Ответить с цитированием
Старый 04.04.2008, 14:33   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от Ins Посмотреть сообщение
А вот и нет Процесс может быть уже завершен, но пока существует хотя бы одна ссылка на него (reference в ядре, или дескриптор) - объект "процесс" уничтожен не будет. Соответсвенно у этого процесса можно узнать время окончания и окончен ли он сообще. Времена (все) можно получить с помощью GetProcessTimes, а узнать, завершен ли процесс или нет - GetExitCodeProcess и анализировать результат на значение STILL_ACTIVE
Ну это да. Утро вечера мудренее . Правда, для этого придется "прихватить" процесс, и в связи с этим GetExitCodeProcess не понадобится, а скорее будет мешать. Проще тогда поступить по такой схеме:
Код:
//.....................
	DWORD		dwID = XXXXXXXXX;
	FILETIME	ftCreateTime;
	FILETIME	ftKernelTime;
	FILETIME	ftUserTime;
	FILETIME	ftExitTime;

	HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwID);
	if(hProcess){
		WaitForSingleObject(hProcess, INFINITE);
		GetProcessTimes(hProcess, &ftCreateTime, &ftExitTime, &ftKernelTime, &ftUserTime);
		CloseHandle(hProcess);
	}
//.....................
B_N вне форума Ответить с цитированием
Старый 13.04.2008, 11:46   #5
student_63
Пользователь
 
Аватар для student_63
 
Регистрация: 07.11.2007
Сообщений: 92
По умолчанию

А как мне вывести завершенные процессы и оповестить пользователю что его уже не существует??
Я уверен, вы согласитесь со мной... что если
со страницей 534 мы встречаемся во второй главе, то первая глава должна быть невыносимо длинной.
- ШЕРЛОК ХОЛМС
student_63 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Узнать работает ли процесс. subsonic Win Api 9 16.04.2009 18:20
Процессы в С# Спартак Общие вопросы .NET 4 10.07.2008 12:33
Процессы. Делфи. Simply-Art Win Api 5 12.05.2008 08:52
бизнес-процессы dmitriycmk Софт 0 24.11.2006 10:44