Почему nnCron не видит некоторые окна.

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

Re: Почему nnCron не видит некоторые окна.

Postby Aveiro » Wed, 30 Dec 2015, 18:11

ANR Daemon wrote:Возьмите информатор от того же AutoHotKey и посмотрите, что это за окна.
Скорее всего вы ищете топ-левел окна, а окно сообщения таковым не является.

Попробую.
nncron.exe v 1.93b15 Build 1177 08.02.2016
tm.exe v 1.93b15 Build 604 08.02.2016
Aveiro
 
Posts: 222
Joined: Tue, 06 Jul 2010, 21:19

Re: Почему nnCron не видит некоторые окна.

Postby dothen » Wed, 30 Dec 2015, 21:03

Aveiro wrote:Неожиданно для себя открыл, что простым поиском не удается найти окна, формируемые самой программой nnCron :? Я уже не говорю, что нужно передать нажатия клавиш в окно

Ну, мы ведь не ищем лёгких путей :)
Code: Select all
#( Window_1
NoActive \ Запускаем вручную.
SingleInstance
Action:
4357 Z" nnCron - Окно" Z" Я окно, я есть !" 0 MessageBoxA DROP
)#

#( nn-Activate
 SingleInstance NoLog NoActive
\ Time: * * * * * *
Action:
100 PAUSE
<JScript>
var Shell = new ActiveXObject("WScript.shell");
Shell.AppActivate("nnCron - Окно");   // http://www.script-coding.com/WSH/WshShell.html#3.6.
</SCRIPT>
)#

#( Catch_Window_1
 SingleInstance \ NoLog NoActive
WatchWinCreate:   "nnCron - Окно" \ Ловим окно при создании,
WatchWinActivate: "nnCron - Окно" \ или при активизации.
Action:
\ BlockTheInput         \ (Пользовательский ввод блокируется.)
500 PAUSE \  TMSG: "Окно есть, поймали  :)!" 2
SEND-KEYS-DELAY: 100 500
SEND-KEYS: "{TAB}"    \ Выбираем кнопку.
SEND-KEYS: "@( ){ENTER}{UP}{UP}{UP}"  \ Окно получает и выполняет команды.
SEND-KEYS: "^({DOWN}{DOWN}{DOWN}){ENTER}"
SEND-KEYS: "@({ESC})" \ "Вдруг" окно становится неактивным.
\ UnblockTheInput       \ (Пользовательский ввод разблокируется.)
1000 PAUSE            \ (Сейчас можно закрыть окно.)
nn-Activate LAUNCH    \ Делаем окно активным.
)#
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

Re: Почему nnCron не видит некоторые окна.

Postby prouser » Thu, 31 Dec 2015, 08:21

ANR Daemon wrote:А давайте, вы будете писать в каком-то одном топике?…

̶̶К̶т̶о̶ ̶«̶в̶ы̶»̶-̶т̶о̶?̶ ̶К̶т̶о̶ ̶«̶в̶ы̶»̶,̶ ̶а̶?̶ ̶Я̶ ̶о̶д̶и̶н̶ ̶з̶д̶е̶с̶ь̶!̶ ̶К̶ ̶к̶о̶м̶у̶ ̶т̶ы̶ ̶о̶б̶р̶а̶щ̶а̶е̶ш̶ь̶с̶я̶?̶ ̶П̶е̶р̶е̶ч̶и̶с̶л̶и̶!̶
«Вы» это кто, я? Так я в один топик пишу. В чем проблема?
prouser
 
Posts: 14
Joined: Wed, 17 Feb 2010, 14:05

Re: Почему nnCron не видит некоторые окна.

Postby Aveiro » Thu, 31 Dec 2015, 08:36

prouser wrote:
ANR Daemon wrote:А давайте, вы будете писать в каком-то одном топике?…

̶̶К̶т̶о̶ ̶«̶в̶ы̶»̶-̶т̶о̶?̶ ̶К̶т̶о̶ ̶«̶в̶ы̶»̶,̶ ̶а̶?̶ ̶Я̶ ̶о̶д̶и̶н̶ ̶з̶д̶е̶с̶ь̶!̶ ̶К̶ ̶к̶о̶м̶у̶ ̶т̶ы̶ ̶о̶б̶р̶а̶щ̶а̶е̶ш̶ь̶с̶я̶?̶ ̶П̶е̶р̶е̶ч̶и̶с̶л̶и̶!̶
«Вы» это кто, я? Так я в один топик пишу. В чем проблема?

У нас с Вами похожая не решенная задача. Просто совпадение. :lol:
nncron.exe v 1.93b15 Build 1177 08.02.2016
tm.exe v 1.93b15 Build 604 08.02.2016
Aveiro
 
Posts: 222
Joined: Tue, 06 Jul 2010, 21:19

Re: Почему nnCron не видит некоторые окна.

Postby prouser » Thu, 31 Dec 2015, 18:19

Да, только у меня окно как раз top-level.
Spoiler: show
Мимоходом: всех присутствующих с наступающим!
prouser
 
Posts: 14
Joined: Wed, 17 Feb 2010, 14:05

Re: Почему nnCron не видит некоторые окна.

Postby prouser » Mon, 04 Jan 2016, 16:54

Я апну раз.
Хотел поинтересоваться: проблема решится, если я соберу nncron из исходников в 64-битный бинарник?
Мне желательно знать это заранее, потому что процесс не очень ясный и быстрый.
prouser
 
Posts: 14
Joined: Wed, 17 Feb 2010, 14:05

Re: Почему nnCron не видит некоторые окна.

Postby VoidVolker » Mon, 04 Jan 2016, 17:39

prouser wrote:Хотел поинтересоваться: проблема решится, если я соберу nncron из исходников в 64-битный бинарник?
Мне желательно знать это заранее, потому что процесс не очень ясный и быстрый.

Для этого придется переписать SPFroth 3.75 для поддержки 64-битных вычислений, затем использованные nnCron библиотеки из дистрибутива SPForth, а затем и сам nnCron и его библиотеки. С учетом объема работ и трудозатрат, более логичным видится переписывание SPForth 4 для поддержки 64 бит, а затем, переписывание ннКрона с учетом миграции кода на SPForth 4.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Почему nnCron не видит некоторые окна.

Postby prouser » Mon, 04 Jan 2016, 18:39

М-м, тогда попробую изобрести какой-нибудь костыль.
Спасибо за ответ.
prouser
 
Posts: 14
Joined: Wed, 17 Feb 2010, 14:05

Re: Почему nnCron не видит некоторые окна.

Postby dothen » Sat, 04 Jun 2016, 16:24

Aveiro wrote:Неожиданно для себя открыл, что простым поиском не удается найти окна, формируемые самой программой nnCron ...

Т.е. nnCron не видит свои MSG:, WIN-INPUT-TEXT:, QSTART-APP: и т.п.

Наверно причина здесь:
nnlib.zip\~nn\lib\win\windows\for-win.f

AT procid hwnd GetWindowThreadProcessId
procid GetCurrentProcessId = IF EXIT THEN

Spoiler: show
Code: Select all
:NONAME { buf hwnd \ procid -- ? }
    TRUE
    AT procid hwnd GetWindowThreadProcessId 
    procid GetCurrentProcessId = IF EXIT THEN
    MAX_PATH buf fwTitle hwnd  buf fwGetText @ EXECUTE
\    ?DUP
\    IF 
        buf fwTitle SWAP
\ hwnd . SPACE ." <" 2DUP TYPE  ." >" \ KEY DROP
        buf fwMask COUNT WC|RE-COMPARE ?DUP 0=
        IF buf fwH @ hwnd = THEN
        IF
\ ."  =>" buf fwTitle ASCIIZ> ." <" TYPE ." >"
            hwnd buf fwList GLOBAL AppendNode LOCAL
            buf fwOne @ IF DROP FALSE THEN
        THEN
\ ."  ok " DUP .
\    DEPTH . CR
\    THEN
; QWNDPROC: FW-ENUM-PROC

VoidVolker, а заглушку поставить возможно?
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

Re: Почему nnCron не видит некоторые окна.

Postby VoidVolker » Sat, 04 Jun 2016, 17:30

dothen wrote:VoidVolker, а заглушку поставить возможно?

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

Re: Почему nnCron не видит некоторые окна.

Postby dothen » Sat, 04 Jun 2016, 18:00

Ну может быть хак? Ну если нет так нет... :?
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

Re: Почему nnCron не видит некоторые окна.

Postby VoidVolker » Sat, 04 Jun 2016, 22:28

dothen wrote:Ну может быть хак? Ну если нет так нет...

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

Re: Почему nnCron не видит некоторые окна.

Postby dothen » Sat, 04 Jun 2016, 23:07

И правда, можно же пересобрать.
Задача в целом - находить окна штатными средствами nnCron.
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

Re: Почему nnCron не видит некоторые окна.

Postby Aveiro » Mon, 15 Aug 2016, 10:59

Вот такая строчка кода работала в beta13 (сборка nnCron). Обновился до beta15 - синтактическая ошибка в кронтабе теперь.. Может конечно дело не в обновлении, а в коде, но, повторюсь раньше ошибка не всплывала...
windows.spf естественно подключен.

Code: Select all
WIN-EXIST: "* — Блокнот" WIN-HWND VISIBLE? AND \ <-- ошибка здесь
IF
    \ код
THEN
nncron.exe v 1.93b15 Build 1177 08.02.2016
tm.exe v 1.93b15 Build 604 08.02.2016
Aveiro
 
Posts: 222
Joined: Tue, 06 Jul 2010, 21:19

Re: Почему nnCron не видит некоторые окна.

Postby dothen » Mon, 15 Aug 2016, 23:54

У меня работает, проверял в WinXP Win7 (32)
nncron.exe v 1.93b15 Build 1177 08.02.2016

Попробуй выполнить этот кусок в отдельной задаче.
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

PreviousNext

Return to nnCron forum (Russian)

Who is online

Users browsing this forum: No registered users and 3 guests

cron