Ru-Board.club
← Вернуться в раздел «Программы»

» nnCron

Автор: lucky_Luk
Дата сообщения: 28.11.2008 15:40
Что-то у меня с INTERVAL: не ладится, задача не запускается сутками.

Код:
#( KIS
SingleInstance
AsLoggedUser
RunMissed
Rule: INTERVAL: 8:00-23:59/04:00
Action:
PAUSE: 00:03
ShowMinimized
START-APP: C:\Program Files\Kaspersky Internet Security 2009\avp.com update
)#
Автор: lucky_Luk
Дата сообщения: 28.11.2008 20:17
Дополнение: если компьютер работает целый день, то задача отрабатывает. А вот если его просто включить во время заданного интервала (допустим в 17 часов, когда несколько периодов по времени уже прошло), то задача сразу не запускается. ИМХО nnCron ждет окончания 4-часового периода по интервалу времени, или с момента включения компьютера.
Т.е. RunMissed не отрабатывает.
Может вместо RunMissed нужно поставить дополнительный цикл проверки попадания в интервал?
Автор: rMaster
Дата сообщения: 29.11.2008 06:01
Появился новый nnCron v1.92b3. Сделана поддержка запуска в Vista и Windows 2008 Server http://www.rapidshare.ru/841719
Автор: Dimapplk
Дата сообщения: 01.12.2008 02:19
Здравствуйте. Помогите разобраться с nnCron. Есть две задачи вроде бы никак между собой не свзанные.

[more]#( Control
Time: 5/* * * * * *
AsLoggedUser
LoadProfile
SingleInstance
NoLog
VARIABLE icon_id
Action:
0 icon_id !
BEGIN
FILE-EXIST: C:\*.*
IF
icon_id @ 0=
IF
S" Тескт какой-то" 32516 0 LoadIconA ADD-TI icon_id !
THEN
ELSE
icon_id @ DEL-TI
THEN
PAUSE: 500
AGAIN
)#

#( Запуск
WatchHotKey: "$3"
Action:
MSG: "Begin"
WIN-EXIST: "Кальку*"
IF MSG: "%WIN-TITLE% EXIST" ELSE MSG: "NOT EXIST" THEN
MSG: "end"
)#
[/more]

Задача "Запуск" нормально все отрабатывает лишь до тех пор пока не запущена задача "Control". Но как только "Control" запущена в "Запуск" пояляются следющие глюки: при закрытом калькуляторе срабатывет только первый MSG, т.е. появлется только "Begin" и все. Дальше задача не идет, никаких ошибок никуда не выводит, в лог ничего не пишит....

Помогите разобраться или хотя бы скажите, это еще у кого-нибудь воспроизводится? или только у меня такое?
Автор: Shakirt
Дата сообщения: 01.12.2008 07:37
Здравствуйте!

Вопрос к опытным пользователям nnCron.

Есть такая задача. По роду деятельности часто приходится выгружать данные. После обработки данных результирующие таблицы выгружаются в файлы xls, но формат у этих xls файлов tab-limited. Так вот, для послдеующей обработки необходимо открывать каждый полученный файл и пересохранять в полноценный xls формат. (Сразу в нормальный xls формат выгружать не получается в силу разных причин).

Так вот, возможно ли с помощью nnCron автоматизировать процесс пересохранения всех файлов *.xls в заданной папке?

Когда делаешь в ручную, это выглядит так:
1. Открываем xls файл и жмём сохранить
2. Появляется окошко, которое информирует, что есть данные не совместимые с tab-limited форматированием, и спрашивает, действительно ли мы хотим оставить имеющийся формат..
3. Мы отвечаем "Нет" и сохраняем файл в нормальном xls формате
4. Он говорит, что файл уже существует и спрашивает, действительно ли мы хотим его заменить
5. Отвечаем "Да"
6. Закрываем файл

Вот такая вот задача.

Может, есть какой-либо способ помимо nnCronа?

В общем, буду рад любым советам.

Спасибо.
Автор: DJ makrus
Дата сообщения: 01.12.2008 08:09
lucky_Luk
Цитата:
А вот если его просто включить во время заданного интервала (допустим в 17 часов, когда несколько периодов по времени уже прошло), то задача сразу не запускается.
Если не ошибаюсь, то Rule: проверяется в последнюю очередь и точно по логическому "И"..., замени
Код: Rule: INTERVAL: 8:00-23:59/04:00
Автор: Dimapplk
Дата сообщения: 01.12.2008 10:52
DJ makrus
Другие задачи (похожие на Запуск) тоже работают не праильно. В nncron.out я не знаю что там лишнее, а что и должно быть. На всякий случай выкладываю все содержимое....
[more]MemStat isn't unique
MemLoad isn't unique
TotalPhys isn't unique
AvailPhys isn't unique
TotalPageFile isn't unique
AvailPageFile isn't unique
TotalVirt isn't unique
AvailVirt isn't unique
GetVolID isn't unique
GET-VOL-ID isn't unique
GET-VOL-NAME isn't unique
nnCron. v 1.91 Build 1083 21.03.2006
Copyright (C) 2000-2008 nnSoft. email:nemtsev@nncron.ru
Зарегистрирован только для некоммерческого использования
Registered for non-commercial use only
Control isn't unique[/more]
Только что удалил все задачи кроме этих двух. Все равно не работает....
Еще раз выложу эти две задачи упрощенные еще сильнее.
[more]#( Control
SingleInstance
NoLog
VARIABLE icon_id
Action:
S" Работаю" 32516 0 LoadIconA ADD-TI icon_id1
PAUSE: 30000

)#

#( Запуск
WatchHotKey: "$3"
Action:
MSG: "Begin"
WIN-EXIST: "Кальку*"
IF MSG: "%WIN-TITLE% EXIST" ELSE MSG: "NOT EXIST" THEN
)#[/more]
Выяснилось, что WIN-EXIST в Запуск отдает результат только после того как в Control закончится пауза (при условии, что искомого окна нет)

P.S. Скажите у Вас этот глюк воспроизводится?
Автор: DJ makrus
Дата сообщения: 01.12.2008 13:19
Shakirt
Цитата:
Так вот, возможно ли с помощью nnCron автоматизировать процесс пересохранения всех файлов *.xls в заданной папке?
Такое возможно можете попробовать сами сделать, я постараюсь подсказывать вам и помогать (но только не помогать читать Help ), большего обещать не могу, т.к. щас и в ближайшие недели две со временем будет совсем туго

Dimapplk
Цитата:
В nncron.out я не знаю что там лишнее...
Все что кроме четырех строк:
Код: nnCron. v 1.91 Build 1083 21.03.2006
Copyright (C) 2000-2008 nnSoft. email:nemtsev@nncron.ru
Зарегистрирован только для некоммерческого использования
Registered for non-commercial use only
Автор: Dimapplk
Дата сообщения: 01.12.2008 14:13
Удалил все задачи кроме этих двух, отключил все плагины кроме win2tray.spf и
windows.spf, переименовал задачу в Контроль, убрал лишнюю единичку. В результатте все лишнее из nncron.out исчезло, но Запуск так и не работает. (nncron перезапускал)

P.S. Скажите мне, что у Вас эта ошибка не воспроизводится и я спокойно пойду переустанавливать windows.
Автор: Shakirt
Дата сообщения: 01.12.2008 15:39
DJ makrus
Для меня главное было узнать, возможно или нет. Ответ я получил - будем копать HELP

Спасибо!
Автор: DJ makrus
Дата сообщения: 01.12.2008 16:09
Dimapplk

Цитата:
Скажите мне, что у Вас эта ошибка не воспроизводится и я спокойно пойду переустанавливать windows.
не торопись..., вот в таком [more=виде]
Код: #( #( Control_2
SingleInstance
NoLog
VARIABLE icon_id
Action:
S" Работаю" 32516 0 LoadIconA ADD-TI icon_id !
)#

#( Запуск
\ NoActive
WatchHotKey: "$3"
Action:
MSG: "Begin"
WIN-EXIST: "Кальку*"
IF MSG: "%WIN-TITLE% EXIST" ELSE MSG: "NOT EXIST" THEN
)#
Автор: Dimapplk
Дата сообщения: 01.12.2008 19:42
В таком виде конечно работает. Но у вас в трэе находится не иконка, а фантом, который исчезнет при наведении указателя. Вторая задача работает неправильно именно если в это врямя ВЫПОЛНЯЕТСЯ первая задача, а у Вас она завершается сразу после того как началась. Просто добавьте в конце первой задачи паузу в 30-60 секунд. И поробуйте выполнить вторую....
Автор: Dimapplk
Дата сообщения: 02.12.2008 13:52
Не получается полуить имя тома только что вставленного диска. Ткните носом что почитать.
Интуиция говорит что вот так вроде бы должно работать

WatchDrive: "*"
Action:
[CHAR] DRIVE-LETTER GET-VOL-NAME MsgBox

Но она меня явно обманывает....
Автор: frozen2
Дата сообщения: 02.12.2008 21:52
Интересует вот такая задача.
Необходимо закрывать появляющиеся сообщения с кнопкой ok (системные сообщения и сообщения приложений), и копировать текст сообщения в текстовый файл (имя программы, создавшей сообщение тоже должно быть скопировано).
В хелпе не нашел отслеживания текста кнопок (button) в окне.
Автор: DJ makrus
Дата сообщения: 04.12.2008 11:56
Dimapplk
Цитата:
Просто добавьте в конце первой задачи паузу в 30-60 секунд. И поробуйте выполнить вторую....
Ага, точно есть такое, и судя по тишине на оффоруме - возможно действительно баг nnCron
ежели долго будет висеть без ответа (неделю или тем более две), меня толкани (можно в ПМ) - попробую обратить на этот случай внимание автора.

А как задача в целом звучит? Может есть возможность пока решить ее другим образом?
Цитата:
Но она меня явно обманывает....
да вроде не должна..., я флешки не обзываю..., измени свою строку до вида:
Код: [CHAR] DRIVE-LETTER GET-VOL-NAME 2DUP CRON-LOG MsgBox
Автор: Dimapplk
Дата сообщения: 04.12.2008 13:48
DJ makrus 12:56 04-12-2008
Цитата:
А как задача в целом звучит? Может есть возможность пока решить ее другим образом?
Цитата:

Задачи разные. В некоторых нужно проверять наличе окон, а в некоторых хотелось бы использовать иконку в трэе в качестве индикатора...
Сейчас вместо ADD-TI использую ADD-HOST, но оно не дает всплывающий текст иконки менять, а хочется....
Автор: Pilotsoft
Дата сообщения: 09.12.2008 10:00
Здравствуйте, уважаемые
Помогите, пожалуйста, средствами сабжа отследить появление в трее сообщения Download Master'a об успешности закачки. WatchWindow, WatchWinCreate(Activate) почему-то не срабатывают, может класс окна не тот? Задача: после успешной закачки вызвать уже загруженый UniversalShareDownloader и нажать рисованную кнопку старт. Спасибо
[more]
WatchWinCreate: "*добавить закачку*"
Action:
PLAY-SOUNDW: "C:\WINDOWS\Media\tada.wav"
WIN-MOVE: 458 280
MOUSE-MOVE: 540 545
MOUSE-LBDN
PAUSE: 1000
MOUSE-LBUP
WIN-ACTIVATE: "Universal Share Downloader v1.3.5.1"
WIN-MOVE: 290 200
MOUSE-MOVE: 315 252
MOUSE-LBDN
PAUSE: 1000
MOUSE-LBUP
PAUSE: 300000
MOUSE-LBDN
PAUSE: 1000
MOUSE-LBUP
[/more]
Выложил свой пол-ночи успешно работавший скрипт. Пока такая схема не очень удовлетворяет.
Автор: wyxa
Дата сообщения: 09.12.2008 10:55
После одной из перезагрузок перестали работать задания, реагирующие на комбинации клавиш. В логах следующее:
Код: 16:44:27 1816 RegisterHotKey ERROR # 0: HotKeyGTalk
16:44:27 1816 RegisterHotKey ERROR # 1409: HotKeyWord
Автор: LeaF_AVF
Дата сообщения: 09.12.2008 11:40
wyxa
по-моему это свидетельствует о том, что используемая комбинация клавиш уже занята. Может установили (или настроили) какое-то ПО, к-рое зарегистрировало данные клавиши под себя?
Автор: wyxa
Дата сообщения: 10.12.2008 09:18
LeaF_AVF
Странно, после очередного перезапуска, всё стало на свои места.
Мистика.
Это видимо с Виндой что-то. У меня с перезагрузкой иногда что-то слегка меняется.
Автор: lucky_Luk
Дата сообщения: 11.12.2008 20:10
DJ makrus

Цитата:
Time: Time: * */4 * * * *

Зачем там 2 подряд Time: я не понял, а конструкция

Цитата:
Time: * */4 * * * *

по моим наблюдениям запускает задачу примерно каждые 15 минут, т.е. 4 раза в час .
Попробую поставить /4 или /6 возле "звездочки", отвечающей за дни, может будет стартовать 4 или 6 раз в сутки (6 раз в сутки это нужный мне 1 раз в 4 часа).
Автор: lucky_Luk
Дата сообщения: 12.12.2008 21:06
Мне нужно сделать экзешник из задачи nnCron, делаю текстовый файл с таким содержимым:

Код:
: MyRUN
PAUSE: 15000
START-APP: C:\Program Files\WIDCOMM\Bluetooth Software\BTTray.exe
;

' MyRUN MAINX !
S" MyProg.exe" SAVE
Автор: Demon L
Дата сообщения: 17.12.2008 02:28
Помогите, пожалуйста... совсем голову сломал.


Необходимо прочитать небольшой текстовой файл и переместить его в папку 1, если в этом файле найдена нужная строка, если нет, то в папку 2. Если можно, с примером.
Автор: Dimapplk
Дата сообщения: 17.12.2008 09:52

Цитата:
Помогите, пожалуйста... совсем голову сломал.


Наверняка не самый оптимальный, но вполне работающий [more=вариант]
Код: #( анализ
NoActive
USER-VALUE list-file
USER-VALUE list-contents
VARIABLE IsStringFinded
10240 CONSTANT max-line-size
CREATE filename 256 ALLOT
CREATE StringFind 256 ALLOT
Action:
S" C:\Users\Dima\Program\nnCron\test1.txt" filename PLACE
S" task" StringFind PLACE
0 IsStringFinded !
max-line-size ALLOCATE THROW TO list-contents
S" %filename COUNT%" EVAL-SUBST R/O OPEN-FILE-SHARED THROW TO list-file
[NONAME BEGIN list-contents max-line-size 2- list-file READ-LINE THROW WHILE
list-contents + 0 SWAP C!
RE-MATCH: "%list-contents ASCIIZ>%" "/%StringFind COUNT%/"
IF 1 IsStringFinded ! EXIT THEN
REPEAT NONAME] EXECUTE
list-file CLOSE-FILE DROP
list-contents FREE DROP
IsStringFinded @ 0=
IF DROP FILE-MOVE: "%filename COUNT%" "2"
ELSE FILE-MOVE: "%filename COUNT%" "1"
THEN
)#
Автор: Demon L
Дата сообщения: 17.12.2008 10:20
Dimapplk
Большое спасибо но кажется это немножко не то...

Еще раз более подробно.
Задача :
В папку C:\1 сыпется файлики их имена и расширения все время разные (примерно вот такие 12345678.m12) нужно их все раскидать по двум другим папкам по условию:
если в файле есть "qwerty" в любой строке, то переместить файл не меняя имени в папку C:\2 если в нем нет "qwerty" то в папку C:\3
в итоге C:\1 пустая ждет файликов...


Автор: Dimapplk
Дата сообщения: 17.12.2008 10:30
Незачто. [more=Так]
Код: #( анализ
NoActive
USER-VALUE list-file
USER-VALUE list-contents
VARIABLE IsStringFinded
10240 CONSTANT max-line-size
CREATE StringFind 256 ALLOT
Action:
FOR-FILES: "c:\1\*.*"
S" qwerty" StringFind PLACE
0 IsStringFinded !
max-line-size ALLOCATE THROW TO list-contents
FOUND-FULLPATH R/O OPEN-FILE-SHARED THROW TO list-file
[NONAME BEGIN list-contents max-line-size 2- list-file READ-LINE THROW WHILE
list-contents + 0 SWAP C!
RE-MATCH: "%list-contents ASCIIZ>%" "/%StringFind COUNT%/"
IF 1 IsStringFinded ! EXIT THEN
REPEAT NONAME] EXECUTE
list-file CLOSE-FILE DROP
list-contents FREE DROP
IsStringFinded @ 0=
IF DROP FILE-MOVE: "%FOUND-FULLPATH%" "C:\3"
ELSE FILE-MOVE: "%FOUND-FULLPATH%" "C:\2"
THEN
;FOR-FILES
)#
Автор: Demon L
Дата сообщения: 17.12.2008 10:52
Dimapplk
ОГРОМНОЕ СПАСИБО !!
Все работает.
Не сочти за наглость подскажи как можно сделать одно из мест (C:\3) чтоб это был FTP ?
Автор: Dimapplk
Дата сообщения: 17.12.2008 11:10
Это не ко мне. никогда не работал с FTP из nnCron'а. Но еcли никто ничего не посоветует то можно так: [more=концовка такая]IF DROP
FILE-DELETE: "C:\3\check"
LOG: "C:\3\put.s" "open ftp.АДРЕС.com"
LOG: "C:\3\put.s" "логин"
LOG: "C:\3\put.s" "пароль"
LOG: "C:\3\put.s" "binary"
LOG: "C:\3\put.s" "put %FOUND-FULLPATH%"
LOG: "C:\3\put.s" "mls %FOUND-FULLPATH%"
LOG: "C:\3\put.s" "C:\3\check"
LOG: "C:\3\put.s" "bye"
StartIn: "C:\3\"
SWHide NormalPriority
START-APPW: "ftp -s:C:\3\put.s >> C:\3\ftp.log"
1. FILE-SIZE: "c:\3\check" D< IF FILE-DELETE: "%FOUND-FULLPATH%" THEN
ELSE FILE-MOVE: "%FOUND-FULLPATH%" "C:\2"
THEN[/more]
Автор: Demon L
Дата сообщения: 17.12.2008 12:05
Dimapplk
Еще раз спасибо за помощь !
Так не получилось... буду дальше экспериментировать.
Автор: Dimapplk
Дата сообщения: 17.12.2008 18:44
Хм... странно. Только что проверил. Все работает. Держи [more=полный текст задачи]
Код: NoActive
USER-VALUE list-file
USER-VALUE list-contents
VARIABLE IsStringFinded
10240 CONSTANT max-line-size
CREATE StringFind 256 ALLOT
Action:
FOR-FILES: "c:\1\*.*"
S" qwerty" StringFind PLACE
0 IsStringFinded !
max-line-size ALLOCATE THROW TO list-contents
FOUND-FULLPATH R/O OPEN-FILE-SHARED THROW TO list-file
[NONAME BEGIN list-contents max-line-size 2- list-file READ-LINE THROW WHILE
list-contents + 0 SWAP C!
RE-MATCH: "%list-contents ASCIIZ>%" "/%StringFind COUNT%/"
IF 1 IsStringFinded ! EXIT THEN
REPEAT NONAME] EXECUTE
list-file CLOSE-FILE DROP
list-contents FREE DROP
IsStringFinded @ 0=
IF DROP
FILE-DELETE: "C:\3\check"
FILE-DELETE: "C:\3\put.s"
LOG: "C:\3\put.s" "open ftp.адрес.com"
LOG: "C:\3\put.s" "твойЛогин"
LOG: "C:\3\put.s" "ТвойПароль"
LOG: "C:\3\put.s" "binary"
LOG: "C:\3\put.s" "put %FOUND-FULLPATH%"
LOG: "C:\3\put.s" "mls %FOUND-FILENAME%"
LOG: "C:\3\put.s" "C:\3\check"
LOG: "C:\3\put.s" "y"
LOG: "C:\3\put.s" "bye"
StartIn: "C:\3\"
SWHide NormalPriority
START-APPW: "ftp -s:put.s >> C:\3\ftp.log"
1. FILE-SIZE: "c:\3\check" D< IF FILE-DELETE: "%FOUND-FULLPATH%" THEN
ELSE FILE-MOVE: "%FOUND-FULLPATH%" "C:\2"
THEN
;FOR-FILES
)#

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

Предыдущая тема: Autodesk AutoCAD


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.