Отcлеживание событий (Watch*) в Win7 SP1 x64

Обсуждение программ nnCron и nnCron LITE

Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Alizar58 » Sun, 08 Jan 2012, 18:17

Использую команды WatchWindow: "*", WatchWinActivate: "*", WatchWinCreate: "*"
При появлении любого окна, время и заголовок окна пишется в лог-файл.
Потом по этому лог-файлу подсчитывается время работы с каждым приложением.

nncron.exe v 1.93b10 Build 1141 03.12.2009 + update some of code from AlikasS at 16.06.2011
Работает как приложение.

Простая задача:
Code: Select all
#( MyWork
WatchWindow: "*"
Action:
FILE-APPEND: "d:\Work\MyWork%CUR-DATE DATE>S%.log" "%hh%:%mm%:%ss% - %USERNAME% - %ACTIVE-WINDOW%%crlf%"
)#

или

Code: Select all
#( Window_create
WatchWinCreate: "*"
Action:
FILE-APPEND: "d:\Work\MyWork%CUR-DATE DATE>S%.log" "%hh%:%mm%:%ss% - %USERNAME% - создано окно: %WIN-TITLE%%crlf%"
)#


Под Windows 7 SP1 x64 перестали ловиться окна 64-х битных приложений. Только 32-х битных.
Пробовал использовать
Code: Select all
WatchProc: "*"
WatchProcStop: "*"

аналогичная картина, 64-х битные процессы не отлавливаются..
Кстати, не работает и WatchQuerySuspend при переходе в режим "хибернейт"
WatchResume работает.

Перерыл весь форум, ответа не нашёл. Может кто сталкивался с такой проблемой?
Last edited by VoidVolker on Sun, 08 Jan 2012, 19:41, edited 1 time in total.
Reason: Для кода следует использовать тег [code] [/code], а также не стоит увлекаться радужными раскрасками. Это все-таки форум - его читает много людей и следует придерживаться общепринятых правил.
Alizar58
 
Posts: 4
Joined: Sun, 08 Jan 2012, 17:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Serg1_cv » Mon, 09 Jan 2012, 11:03

Serg1_cv
 
Posts: 151
Joined: Thu, 22 Mar 2007, 13:39
Location: Черновцы

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Alizar58 » Mon, 09 Jan 2012, 14:43

Если бы речь шла об отлавливании 1-2 процессов, то можно было что-то соорудить..
А тут просто нужно фиксировать время активации каждого окна, а также его имя..
А WatсhWin*: "*" в упор не видит окон 64-х битных приложений..
Даже, если прямо указать, например WatсhWin*: "Калькулятор", то всё равно не отлавливает его.
В чём может быть дело?

А вот под Win7 x32 отлавивает даже Far2, хотя и пишут, что консольные окошки не ловит.
Alizar58
 
Posts: 4
Joined: Sun, 08 Jan 2012, 17:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby ask » Mon, 09 Jan 2012, 15:07

Как вариант, ловить не "окна", а соответствующие им 64-битные процессы.
Слово "PROC-EXIST64?" реализовал AlikasS; почитать об этом можно в ветке "PROC-EXIST не находит некоторые процессы".
ask
 
Posts: 56
Joined: Sun, 11 Dec 2011, 09:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Morituruz » Mon, 09 Jan 2012, 15:30

ask, если вы прочитаете первый пост, то увидите, что автор хочет подсчитывать время работы с окном, PROC-EXIST тут никак не поможет. Нам давно уже нужны 64-битные WatchWin-, но боюсь что это невозможно, пока крон работает в 32-битной среде, потому что там всплывают только 32-битные окошки.
User avatar
Morituruz
 
Posts: 725
Joined: Sun, 14 Oct 2007, 01:51

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby ask » Mon, 09 Jan 2012, 16:33

Да понял я... Но обычно соответствие "окно <--> процесс" - один-к-одному. Т.е., если запущен процесс, значит, и окно запущено, и наоборот.

Исключения - только если окна сознательно "прячутся". У вас именно это происходит?
ask
 
Posts: 56
Joined: Sun, 11 Dec 2011, 09:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Morituruz » Mon, 09 Jan 2012, 16:47

Да нет, если я правильно понял автора, ему отсчитывать время работы с окном надо, т.е. сколько было это окно на переднем плане, сколько другое.
Ну например процесс экселя запущен, окно значит тоже есть, вот только весь рабочий день на переднем плане окно сапёра/интернет эксплорера, а экселя только полчаса :)
User avatar
Morituruz
 
Posts: 725
Joined: Sun, 14 Oct 2007, 01:51

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby ask » Mon, 09 Jan 2012, 16:59

Ну, тогда автору вопроса придётся ждать реализации 64-битного nnCron.
И он в этом ожидании не будет одинок :)
ask
 
Posts: 56
Joined: Sun, 11 Dec 2011, 09:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Alizar58 » Mon, 09 Jan 2012, 17:09

Нужно отловить именно момент активации окна и зафиксировать время.. До активации следующего считается, что мы работали с предыдущим приложением.. Если запустился Screen Saver, то перерыв в работе :)
А процессы могут быть запущены один раз и висеть в памяти.
Получается, что в текущей версии WatchWin* никак не отловить 64-х битные окошки :(
С 2005 года работало всё на XP, да и на Win 2003.. но прогресс наступает.. пришло время Win 7
Alizar58
 
Posts: 4
Joined: Sun, 08 Jan 2012, 17:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Serg1_cv » Mon, 09 Jan 2012, 22:02

Разработчик у крона один насколько я догадываюсь. да и то разработал он его в свободное от работы время, за что ему огромное спасибо. А чтоб наладить 64 битный процесс, то это нужно весь код крона менять думаю что для успешного существования и развития даной программы уже давно назрела необходимость для создания группы энтузиастов с каждодневными сборками как это сделано для ФАР мэнеджера. кстати там уже третья ветка вышла, довольно успешно развивается. Еще пример это фаер фокс, и другие программы от мозила фандейшн. А то получается что для хрюшки прога идеальная а уже начиная с висты и выше нормально может работать только как приложение и то там начинаются всякие ньюансы. Программа очень хорошая и аналогов я не встречал, ну то есть имеется на рынке куча органайзеров и планировщиков, но так чтоб в одном планировщике настолько гибкие настройки и целый язык программирования и возможность компиляции экзе файлов вобщем нужно развивать программу иначе она просто умрет, шутка ли в 2009 году была последняя бета версия и за 2 года дело до релиза так и не дошло
Serg1_cv
 
Posts: 151
Joined: Thu, 22 Mar 2007, 13:39
Location: Черновцы

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby VoidVolker » Mon, 09 Jan 2012, 22:23

Ннкрон создан на базе СП-форта 3.75 времен начала века. А х64 фортов практически нет. Так что для платформы х64 надо писать все полностью с нуля. И на это все нужны ресурсы.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby AlikasS » Tue, 10 Jan 2012, 03:04

Alizar58 wrote:Нужно отловить именно момент активации окна и зафиксировать время.. До активации следующего считается, что мы работали с предыдущим приложением.. Если запустился Screen Saver, то перерыв в работе :)
А процессы могут быть запущены один раз и висеть в памяти.
Получается, что в текущей версии WatchWin* никак не отловить 64-х битные окошки :(
С 2005 года работало всё на XP, да и на Win 2003.. но прогресс наступает.. пришло время Win 7

WinSpy из меню nnCron (инструменты) ловит эти 64-х битные окна? информацию показывает о них?
User avatar
AlikasS
 
Posts: 1434
Joined: Wed, 28 Jun 2006, 05:39
Location: Khabarovsk

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Alizar58 » Tue, 10 Jan 2012, 12:36

AlikasS wrote:WinSpy из меню nnCron (инструменты) ловит эти 64-х битные окна? информацию показывает о них?


Да, показывает.
Например для калькулятора:

Code: Select all
Main window: (391б460)-(609б768) 219х309
Text: Калькулятор
Class: CalcFrame
Handle: 0x250EB2

Child window: (14,51)-(204,101) 191 x 51
Text:
Class: Static
Handle: 0xA07F8
Pos: Abs: (485,534) Rel: (94,74)
Alizar58
 
Posts: 4
Joined: Sun, 08 Jan 2012, 17:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby Ali » Fri, 02 Mar 2012, 23:42

Может кто подскажет, уже не знаю чего пробовать.
Система ХР сп2 х32. Если выйти из крона и потом его запустить, то эти операторы просто тупо перестают видеть окна:
WatchWinCreate
WatchWinDestroy

Пробовал использовать в задаче AsLoggedUser и т.п. - не помогает.
Ali
 
Posts: 15
Joined: Fri, 08 Jul 2011, 19:38

Re: Отcлеживание событий (Watch*) в Win7 SP1 x64

Postby VoidVolker » Sat, 03 Mar 2012, 00:04

Вероятно, запуск руками отличается от запуска системой - например как приложение(от имени текущего пользователя) и как сервис(от имени системы).
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Next

Return to nnCron forum (Russian)

Who is online

Users browsing this forum: No registered users and 2 guests

cron