Вопрос - Ответ

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

Re: Вопрос - Ответ

Postby Aveiro » Sun, 13 Jan 2013, 19:30

VoidVolker wrote:Потому что в ннкроне арифметика целочисленная.

И как быть ? ( записать не целое число)
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: Вопрос - Ответ

Postby VoidVolker » Sun, 13 Jan 2013, 21:10

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

Re: Вопрос - Ответ

Postby Aveiro » Tue, 15 Jan 2013, 18:13

VoidVolker wrote:Записать-то можно и как строку. Вот только: а какова задача-то?

Это из управления MsAgent.Так как используется одна задача на разных компах, то из-за разных размеров мониторов приходится использовать разные размеры персонажей. Размер персонажа устанавливается в строке:
Code: Select all
objCharacter.Height = objCharacter.OriginalHeight

Так вот я хотел установить размер персонажа на 80% (т.е OriginalHeight * переменную, в данном случае переменная равна 0,8).
Если сложно,то ладно,обойду используя названия компов.
У меня еще вопрос,можно ли в окне ,у которого нет названия(дочернее) отследить момент когда изменится надпись на клавише ? Т.е в окне есть клавиша,у нее надпись "Отмена" меняется на надпись "Готово". Этот момент нужно отловить,чтобы нажать на нее,когда будет "Готово".
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: Вопрос - Ответ

Postby VoidVolker » Tue, 15 Jan 2013, 18:30

Aveiro wrote:из-за разных размеров мониторов приходится использовать разные размеры персонажей. Размер персонажа устанавливается в строке

Проценты вычисляются так:
Code: Select all
1000  80 100 */ .
800  Ok

Code: Select all
OriginalHeight 80 100 */


Aveiro wrote:У меня еще вопрос,можно ли в окне ,у которого нет названия(дочернее) отследить момент когда изменится надпись на клавише ? Т.е в окне есть клавиша,у нее надпись "Отмена" меняется на надпись "Готово". Этот момент нужно отловить,чтобы нажать на нее,когда будет "Готово".

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

Re: Вопрос - Ответ

Postby Aveiro » Sat, 19 Jan 2013, 10:56

VoidVolker wrote:Да, окна легко идентифицируются по их классу. Ищем главное окно, далее среди его дочерних окон находим нужную кнопку и запоминаем её хэндл, затем в цикле проверяем его заголовок.

Окно без названия нахожу, для простоты работы с ним переименовываю его в "Scan Program". Далее смотрю классы кнопок.
Code: Select all
WIN-EXIST: "Scan Program"
IF
   FOR-CHILD-WINDOWS: "*"
        LOG: "D:\1.log" "%FOUND-CHILD-WINDOW%"
       LOG: "D:\1.log" "%WIN-CHILD-HWND%"
    FOR-CHILD-WINDOWS
THEN

В лог печатаются даже скрытые кнопки, которых нет. :? Пытался добавить
Code: Select all
WIN-HWND VISIBLE?
не помогло. Может найдется время набросать пример как отловить кнопку,запомнить ее хэндл, и цикл отлова изменения текста кнопки ?
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: Вопрос - Ответ

Postby VoidVolker » Sat, 19 Jan 2013, 12:13

Aveiro wrote:Может найдется время набросать пример как отловить кнопку

http://s0m.narod.ru/iws.html - лучший сканер окон. Позволяет просмотреть полностью все дерево всех окон в системе.
Aveiro wrote:и цикл отлова изменения текста

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

Re: Вопрос - Ответ

Postby Bryuhanov » Sat, 19 Jan 2013, 19:40

Здравствуйте.
Наконец-то обновился до windows 7 и сразу же возникли проблеммы с запуском любимого nncron'а.
Скачал с сайта:
nncron.exe v 1.93b10 Build 1141 03.12.2009 (upd AlikasS 30.07.2012 mod.2.7)
Устанавливал и как процесс и как приложение, указывал в настройках совместимости у всех nncron'овских экзешников выполнение от имени администратора, пробовал различные варианты запуска кронтабов(как пользователь выполнивший logon/как пользователь/загрузить профиль).
Один фиг, при попытке запустить любой скрипт вылезает ошибка:

01:36:57 1468 torrent: Не могу получить токен текущего пользователя. Вызывающая сторона не обладает всеми необходимыми правами доступа.
01:36:57 1468 TASK: torent
01:36:57 1468 Start: C:\Program Files\BitTorrent\BitTorrent.exe
01:36:57 1468 Start result: 1314
01:36:59 3860 Load crontab
01:36:59 3860 C:\Users\admin\AppData\Roaming\nnCron\nncron.tab

Что я делаю не так?
Bryuhanov
 
Posts: 2
Joined: Sat, 19 Jan 2013, 19:23

Re: Вопрос - Ответ

Postby VoidVolker » Sat, 19 Jan 2013, 19:52

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

Re: Вопрос - Ответ

Postby Bryuhanov » Sat, 19 Jan 2013, 21:10

Большое спасибо за ответ, убрал галки заработало.
Хотя и не решило вопрос, что делать, в случае когда он запущенный как приложение подвиснет, либо потребуется из-под пользователя запускать приложения требующие админских прав? Для этого сейчас существуют какие-то решения?
Кстати, может кто нибудь объяснить, почему проект nncron не развивается с 2009 года? Он же вроде бы был комерчески успешным, а сама программа продавалась за пределами xUSSR и до сих пор имеет кучу фанатов.
Bryuhanov
 
Posts: 2
Joined: Sat, 19 Jan 2013, 19:23

Re: Вопрос - Ответ

Postby VoidVolker » Sun, 20 Jan 2013, 09:52

Bryuhanov wrote: что делать, в случае когда он запущенный как приложение подвиснет

Есть же непотопляемый режим. Ннкрон виснет только в случае ошибок в задачах, сам по себе он стабилен.
Bryuhanov wrote: либо потребуется из-под пользователя запускать приложения требующие админских прав?

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

Re: Вопрос - Ответ

Postby Aveiro » Sun, 20 Jan 2013, 16:33

Несколько дочерних окон, нужно после нахождения первого окна выйти из конструкции:
Code: Select all
FOR-CHILD-WINDOWS: "TTntPanel.UnicodeClass"
   MSG: "%WIN-CHILD-HWND%"
   LEAVE
;FOR-CHILD-WINDOWS

LEAVE , понятно нельзя использовать, он для циклов со счетчиком, EXIT тоже нельзя, задача должна продолжиться.
Что можно использовать ?
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: Вопрос - Ответ

Postby VoidVolker » Sun, 20 Jan 2013, 20:05

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

Re: Вопрос - Ответ

Postby hiveliberty » Wed, 23 Jan 2013, 09:38

Добрый день
Есть вот такая задача в в nncron
Code: Select all
#( copy_share
SingleInstance
Time: * 2 * * * *
Action:
SWHide
START-APP: "C:\progs\nnBackup\nnbackup.exe" sync -i "D:\share\" -o "\\server\backup\share\" -c -s -ad -sa -e -delete-before -q -v -log "D:\backup\logs\copy-share-%DD%.%MM%.%YYYY%.log"
)#

сам nncron запускается службой, от админской учетки в домене сети.
проблема в том, что задача запускается ни один раз.. появляется много процессов nnbackup.
вопрос в том, что я сделал не так?) когда запускаю задачу вручную, все окей - процессов много не создается, работает только один.
hiveliberty
 
Posts: 2
Joined: Wed, 23 Jan 2013, 09:24

Re: Вопрос - Ответ

Postby VoidVolker » Wed, 23 Jan 2013, 14:17

Все правильно, ведь вся задача сводится к запуску программы и завершению задачи. Для пресечения запуска дубля программы следует дождаться окончания работы программы:
Code: Select all
#( copy_share
SingleInstance
Time: * 2 * * * *
Action:
SWHide
START-APPW: "C:\progs\nnBackup\nnbackup.exe" sync -i "D:\share\" -o "\\server\backup\share\" -c -s -ad -sa -e -delete-before -q -v -log "D:\backup\logs\copy-share-%DD%.%MM%.%YYYY%.log"
)#
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Вопрос - Ответ

Postby SeMa » Wed, 23 Jan 2013, 17:41

Как получить текущее время с миллисекундами? В исходниках покопался, но не понял, как выцепить миллисекунды.
Компьютер ─ устройство, разработанное для ускорения и автоматизации человеческих ошибок
User avatar
SeMa
 
Posts: 637
Joined: Fri, 15 Apr 2005, 12:49
Location: Украина

PreviousNext

Return to nnCron forum (Russian)

Who is online

Users browsing this forum: Bing [Bot] and 6 guests