Гость
Форумы / C++ [игнор отключен] [закрыт для гостей] / Определить время простоя программы / 25 сообщений из 29, страница 1 из 2
20.10.2021, 19:15
    #40105672
Pupkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Как в программе определить что эта программа не используется юзером (загружена и простаивает) в течение определенного времени.
...
Рейтинг: 0 / 0
20.10.2021, 19:29
    #40105675
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Вычесть время активности из общего времени запущенности.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.10.2021, 19:52
    #40105676
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
man time
...
Рейтинг: 0 / 0
20.10.2021, 20:10
    #40105677
Pupkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Dimitry Sibiryakov

Вычесть время активности из общего времени запущенности.
А время активностью спросить у жены.
Даже удивляюсь kак это я сам не догадался
...
Рейтинг: 0 / 0
20.10.2021, 20:19
    #40105679
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Pupkin
А время активностью спросить у жены.

Спроси хотя бы под какую ОС надо, родных средств в С/С++ нет, вызывается API ОС, для каждой ОС это индивидуально.
...
Рейтинг: 0 / 0
20.10.2021, 20:19
    #40105680
Pupkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
White Owl
man time
Изначально забыл сказать что у меня C++Builder.
А не могли бы поподробнее об man time?
...
Рейтинг: 0 / 0
20.10.2021, 20:28
    #40105682
Pupkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Dima T

Спроси хотя бы под какую ОС надо...

Так хотел задать вопрос, что впопыхах забыл (уж извините)
Win 10, C++Builder
...
Рейтинг: 0 / 0
20.10.2021, 20:32
    #40105684
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Если под винду надо, то может поможет. Писал для убивания зависших экселей при генерации отчетов.
Проверяется что процесс excel.exe запущен более 10 минут и убивается.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
#include <windows.h>
#include <tlhelp32.h>
#include <shlwapi.h>
#include <stdio.h>



int main(int argc, char* argv[])
{
	HANDLE hProcessSnap = NULL; 
	HANDLE hModuleSnap = NULL; 
	FILETIME f1,f2,f3,f4;
	SYSTEMTIME st, st1;
	__try
	{
		PROCESSENTRY32 pe32 = {0}; 
		pe32.dwSize = sizeof(PROCESSENTRY32); 

		MODULEENTRY32 me32 = {0}; 
		me32.dwSize = sizeof(MODULEENTRY32); 

		hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); 

		if (hProcessSnap != INVALID_HANDLE_VALUE) 
		{
			if(Process32First(hProcessSnap, &pe32)) 
			{
				do 
				{ 
					if(lstrcmpi(pe32.szExeFile, "excel.exe") == 0)
					{
						HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID);
						if(hProc != NULL && GetProcessTimes(hProc, &f1, &f2, &f3, &f4))
						{
							GetSystemTime(&st);
							FileTimeToSystemTime(&f1, &st1);
							DWORD dwDelta = st.wHour * 3600 + st.wMinute * 60 + st.wSecond
												- (st1.wHour * 3600 + st1.wMinute * 60 + st1.wSecond);
							printf("%s PID:%d  Work:%d sec\n", pe32.szExeFile, pe32.th32ProcessID, dwDelta);
							if(dwDelta > 600)
							{
								printf("Facked\n");
								TerminateProcess(hProc, 0);
							}
							CloseHandle(hProc);
						}
					}
				} 
				while (Process32Next(hProcessSnap, &pe32)); 
			} 
			CloseHandle(hProcessSnap);
			hProcessSnap = NULL;
		}
	}
	__except(EXCEPTION_EXECUTE_HANDLER)
	{
		__try
		{
			if(hModuleSnap != NULL) CloseHandle(hModuleSnap); 
			if(hProcessSnap != NULL) CloseHandle(hProcessSnap); 
		}
		__except(EXCEPTION_EXECUTE_HANDLER)
		{
		}
	}
	return 0;
}

...
Рейтинг: 0 / 0
20.10.2021, 23:43
    #40105715
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
CloseHandle(hProc); нужно вызывать если hProc != NULL, и возврат GetProcessTimes тут ни при чем.
...
Рейтинг: 0 / 0
21.10.2021, 13:43
    #40105812
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Pupkin
Как в программе определить что эта программа не используется юзером (загружена и простаивает) в течение определенного времени.

Зависла прога или работает? Я-бы отвалил много денег чтобы кто-то дал точное определение этому термину.

Для бизнес процессов пожалуй только heart beat можеть дать основание говорить что поток ожидает отправки
пакета в сокет и ожидает уже пол-года.

Если брать за основу UI и цикл обработки пользовательских событий - то да. Мы можем просто мерять время
между мышко-кликами или клавиатурными кликами.
...
Рейтинг: 0 / 0
21.10.2021, 18:13
    #40105972
ъъъъъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Pupkin
Как в программе определить что эта программа не используется юзером (загружена и простаивает) в течение определенного времени.

А ты расскажи, откуда у тебя желание знать такие вещи, а уж мы тебе советов насуём - только держись.
Эти советы, конечно, в основном будут типа "ну ты и лох, надо все делать наоборот", но, возможно, будет и что-то полезное.

Рассказывай. :)
...
Рейтинг: 0 / 0
21.10.2021, 19:30
    #40106004
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
mayton,
))))
Термин "простаивает" особенно супер.
Пример юзкейса - "корова стоит и простаивает без дела"))
...
Рейтинг: 0 / 0
21.10.2021, 19:35
    #40106005
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Да. Реактивный сервис простаивает пока нет входящих запросов.

Какого хера?
...
Рейтинг: 0 / 0
21.10.2021, 22:14
    #40106050
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Pupkin
Как в программе определить что эта программа не используется юзером (загружена и простаивает) в течение определенного времени.
конкретно пример (можно со словами "клацаем кликаем" и т.д, но подробно - "Я запускаю программу-файл... и т.д т.п. ".... )
...
Рейтинг: 0 / 0
22.10.2021, 19:54
    #40106211
Pupkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Удивляюсь, какие недогадливые. А еще корифеи ......а уж мы тебе советов насуём...
Сувалок ваших не заметно как-то. Одно ля-ля

Нужно время от последнего мышко-дрыга или кнопко-торка
...
Рейтинг: 0 / 0
22.10.2021, 20:02
    #40106212
Siemargl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Pupkin,

Ну так переопредели главную очередь сообщений приложения, отфильтруй нужные и ставь время.
...
Рейтинг: 0 / 0
22.10.2021, 22:04
    #40106227
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
PupkinНужно время от последнего мышко-дрыга или кнопко-торка

RTFM TApplication::OnMessage.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
22.10.2021, 22:09
    #40106228
Определить время простоя программы
наверное просто складывал бы все миллисекунды от каждой рабочей ф-и
а потом вычитал их из общего UPTIME
...
Рейтинг: 0 / 0
22.10.2021, 22:29
    #40106231
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Pupkin
Удивляюсь, какие недогадливые. А еще корифеи ......а уж мы тебе советов насуём...

Сувалок ваших не заметно как-то. Одно ля-ля

Нужно время от последнего мышко-дрыга или кнопко-торкасреда то какая?
в Борланде что-то типа в Application события OnActivate, OnDeactivate
...
Рейтинг: 0 / 0
22.10.2021, 23:28
    #40106233
ъъъъъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Alex_Ustinov,

это всего лишь переключение фокуса на и с гуёвого vcl приложения.
А что ТС понимает под активностью и простоем - сие тайна.
...
Рейтинг: 0 / 0
23.10.2021, 00:19
    #40106235
Определить время простоя программы
ъъъъъ
А что ТС понимает под активностью и простоем - сие тайна.

очевидно программа не тратит такты в тех ф-ях, которые предназначены для обработки данных в этой программе
...
Рейтинг: 0 / 0
23.10.2021, 21:23
    #40106379
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
Ну все отметились)
Не мечите бисер.
Если ТС трудолюбивый то представит код
...
Рейтинг: 0 / 0
23.10.2021, 22:45
    #40106394
Alex_Ustinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
PetroNotC Sharp,

не, дело не в бисере)
дело в том что смотрю спустя 2 летних месяца -
в этом форуме никто не уточняет у автора вопрос,
хотя это может быть простой парень, который не вполне корректно объяснил суть...)
...
Рейтинг: 0 / 0
23.10.2021, 23:42
    #40106400
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
В форуме собрались академики, которым школьник задаёт вопрос - как измерить высоту здания
с помощью барометра. Но... академики - они-ж не лыком шиты. Раскурив свои трубки... они сидя
в креслах начинают говорить об относительности пространства-времени, о принципе неопределенности
и т.п. В конце концов академики рвут друг друга за бороды, доказывая что барометра не существует
и не существует здания и высота - понятие относительное....
...
Рейтинг: 0 / 0
24.10.2021, 01:38
    #40106407
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Определить время простоя программы
mayton
В форуме собрались академики, которым школьник задаёт вопрос - как измерить высоту здания
с помощью барометра. Но... академики - они-ж не лыком шиты. Раскурив свои трубки... они сидя
в креслах начинают говорить об относительности пространства-времени, о принципе неопределенности
и т.п. В конце концов академики рвут друг друга за бороды, доказывая что барометра не существует
и не существует здания и высота - понятие относительное....
А что есть сомнения в относительности??? Мерять можно от уровня земли, от уровня фундамента, от уровня моря, даже от уровня грунтовых вод многое зависит. А может нужно учитывать скорость ветра на верхних этажах высотки которая стоит в окружении других зданий - внизу ветера то почти не будет, а наверху ветер очень даже сильный - поэтому высоту этого здания надо мерять относительно высоты вокруг стоящих.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Определить время простоя программы / 25 сообщений из 29, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]