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

» nnCron-Планировщик с поддержкой скриптового языка

Автор: lucky_Luk
Дата сообщения: 04.07.2006 16:07
Stygis

Цитата:
rasdial.exe /DISCONNECT

У меня правда не кабельный модем, а VPN-соединение, но думается поможет.


Не работает, rasdial не видит моего соединения через кабельный модем. Соединение активно, даю из командной строки команду disconnect, а rasdial пишет что отсутствуют подключения.
Автор: Stygis
Дата сообщения: 04.07.2006 16:31
lucky_Luk
А HANGUP уже пробовал?
Если просто запустить rasdial, то говорит, что нет подключений? А rasphone тоже не работает?
Не пробовал останавливать сервис Telephony?
Автор: daMIR
Дата сообщения: 04.07.2006 18:11
При запуске приложения с опцией ShowMinimized программа запускается (The Bat) свернутой, но при разворачивании (клике на панель задач в соответсвующее кнопку) то Бат сначала разворачивается, но потом опять сворачивается. При повторном разворте все ОК. Как это побороть? Очень не хочется "лицезреть" Бат при запуске, к тому же там заставка- мыша на пол-экрана, но и по два раза кликать тоже вломы.
Автор: Stygis
Дата сообщения: 04.07.2006 18:18
daMIR
А заставка ж, кажется, отключалась как-то?
Пробовал ShowNoActivate? По описанию, кажется, должно быть окно в бэкграунде.
А другие программы так же реагируют? Не пробовал?
Автор: unreal666
Дата сообщения: 05.07.2006 02:18
daMIR
Попробовал запускать ярлык обычным способом, т.е. так

Код: #( Test_shortcut2
NoActive
AsLoggedUser
Action:
START-APP: G:\1a.lnk
)#
Автор: GOODmen
Дата сообщения: 05.07.2006 06:25
daMIR заставку бата можно убрать ключом, не помню вот каким, зайди в форум по бату
Автор: unreal666
Дата сообщения: 05.07.2006 08:05
daMIR
GOODmen
ключ так и называется /nologo
Автор: OOD
Дата сообщения: 05.07.2006 10:10
Можно ли скрипты nnCron'a из других приложений , в хелпе написано:


Примечание: запуская задачу вручную, помните, что тем самым вы принудительно отменяете все условия запуска (Time:, Rule:, Watch*), определенные в задаче. Указание "выполнить задачу вручную" имеет безусловный приоритет над всеми остальными условиями! Если же вы хотите создать задачу, которая бы проверяла определенные условия даже при "ручном" запуске, перенесите условие внутрь раздела Action:. Например, вместо


Получается, если у Вас в задаче настроено выполнение с определенным интервалом , или же по событию, то оно автоматически отменяется?или же нет:

вот так вот запускаем задачу
Код: nncron.exe -run my_first_task
Автор: Stygis
Дата сообщения: 05.07.2006 10:22
unreal666
У меня вообще уже такое впечатление, что одни задачи сразу нескольким людям в голову лезут (тут и там на форуме). Т.к. уже вроде видел несколько вопросов на nnCron-форуме, которые были тут вроде как заданы OOD, а там разными людьми %)

OOD

Цитата:
Получается, если у Вас в задаче настроено выполнение с определенным интервалом , или же по событию, то оно автоматически отменяется?или же нет:

Если у тебя описаны Time:, Rule:, Watch*, но ты запускаешь задачу вручную, то похоже Time:, Rule:, Watch* просто игнорируются. Т.е. при таком запуске у тебя задача выполнится только один раз.
Автор: OOD
Дата сообщения: 05.07.2006 11:28
Stygis
ясно получается интервал запуска нужно организовывать в иных прилождениях и таким образом можно заставить запускаться скрипт чаще, чем 1 минуту?
Автор: Stygis
Дата сообщения: 05.07.2006 12:06
OOD
Получается так. Я это кажется уже либо здесь, либо на форуме nnCron'а говорил
Автор: lucky_Luk
Дата сообщения: 05.07.2006 12:17
Stygis

Цитата:
А HANGUP уже пробовал?

А что это?

Цитата:
Если просто запустить rasdial, то говорит, что нет подключений?

Да, и это при активном соединении по кабельному модему.

Цитата:
А rasphone тоже не работает?

А что с ним делать? Если я запускаю rasphone при активном кабельном соединении то выводиться диалоговое окно со списком настроенных (но не активных) подключений по dial-up и кнопками Подключить, Отмена, Создать. Но моего кабельного соединения в этом списке нет.

Цитата:
Не пробовал останавливать сервис Telephony

Не пробовал. Но мне кажется (судя по названию), что rasphone и Telephony отвечают за dial-up, а к кабельным соединениям не имеют отношения, или я ошибаюсь?
Похоже придется возится с эмуляцией движений мышки, блин.

Автор: unreal666
Дата сообщения: 05.07.2006 12:46
OOD

Цитата:
ясно получается интервал запуска нужно организовывать в иных прилождениях и таким образом можно заставить запускаться скрипт чаще, чем 1 минуту?

Поставь в Time: * начало действия задачи (или начальное условие или вручную можно запустить), а уже в самом теле задачи сделай цикл с нужной паузой.
Автор: Stygis
Дата сообщения: 05.07.2006 12:52
lucky_Luk

Цитата:
Но моего кабельного соединения в этом списке нет.

Ну понятно. Просто у меня VPN-соединение, оно все-таки тоже не совсем RAS, однако через ras-ля-ля-ля им можно управлять. Поэтому подумал, что возможно это тебе поможет. Очевидно нет
HANGUP - слово для разрыва соединения. Но в свете предыдущего твоего поста, очевидно, оно тебе не поможет.
А с модемом никаких консольных прог для управления не было?
Автор: daMIR
Дата сообщения: 05.07.2006 16:21

Цитата:
ключ так и называется /nologo

Это я знаю в ярлыке так и прописал, а куда прописывать в задаче?. К тому же мне само окно мешает, когда поверх вылазит. Могу текст где-то набивать, могу кино смотреть- хотелось бы чтобы не вылазило поверх всех окон. В идеале должно при нажатии на кнопку запустить соединение (через стандартную звонилку), проверить почту, отрубится.И все это в свернутом режиме.

Цитата:
Пробовал ShowNoActivate?

Попробовал не пашет. Запускается с заставкой и автофокусом. Не помогает также галочка "Не показывать иконку на панели задач"- кликать два раза пиходится на значок в трее. Хотя OutPost в таком режиме работает на ура.

Цитата:
А другие программы так же реагируют?

OutPost- все ОК. Акробат все ОК. Оперу не пробовал (в ней сейчас текст набиваю )
Думаю можно изголится и сделать следующее:
1. Текущему активному окну послать команду WIN-TOPMOST запустить все приложения послать первому окну WIN-NOTOPMOST. Но фокусировка потеряется...
2. Запомнить текущее окно. При появлении запускаемого окна с помощью команды WIN-CLICK: свернуть его, вернуть предыдущее. И так со всеми приложениями. Окна будут мелькать будь здоров...
Так возможно ли запустить Бат свернутым, чтобы для раскрытия окна достаточно было одного клика (неважно куда)?

Добавлено:
Нашел! Надо запускать с ключом /minimize. Только куда его вставить?.. (А вы говорите зачем запускать через ярлык)
Автор: unreal666
Дата сообщения: 05.07.2006 17:53
daMIR

Цитата:
Это я знаю в ярлыке так и прописал, а куда прописывать в задаче?

Так ты даже не написал как ты реализуешь задачу. Если через START-APP, то

START-APP: C:\Program files\The Bat\thebat.exe /nologo

Цитата:
К тому же мне само окно мешает, когда поверх вылазит. Могу текст где-то набивать, могу кино смотреть- хотелось бы чтобы не вылазило поверх всех окон. В идеале должно при нажатии на кнопку запустить соединение (через стандартную звонилку), проверить почту, отрубится.

Вот тебе пример (у меня работает) для диалапа:

Цитата:
#( Забрать_почту
NoActive
AsLoggedUser
LoadProfile
Action:
    ONLINE? NOT
    IF
        RASUser: "имя_юзера"
        RASPassword: "пароль"
        DIAL: "соединение" 100 1
    THEN
    START-APPW: C:\Program Files\The Bat\thebat.exe /nologo /minimize /check* /exit
    \ Здесь можешь отключиться
    \ HANGUP
)#
Автор: daMIR
Дата сообщения: 05.07.2006 20:04
unreal666
Помогло с ключом! Остановился на варианте

Цитата:
ShowNormal NormalPriority
START-APP: D:\Program\Net\The Bat\thebat.exe /nologo /minimize

Просто я ставил кавычки и /nologo пытался внутри/снаружи поставить.

Цитата:
Вот тебе пример

Знаю что Крон умеет дозваниваться, но мне его звонилка не нравится: 1.не отображается ход дозвона. 2 нельзя кнопку "отмена" нажать 3. Неохота постоянно лазить в Крон менять пароли (часто меняется) 4. Привык к стандартной. Поэтому хочу через ярлык, а как реализовать это надо топать на ихний форум видимо...
Автор: peveks
Дата сообщения: 06.07.2006 01:18
У меня есть такая нестандартная задачка... Ломал-ломал голову, ума не приложу как это можно реализовать...

Вообщем есть задача, которая выполнилась допустим в 10 утра, дальше выбирается случайное время запуска этой же задачи от 1 до 60 минут через которое эта задача снова сработает и так дале...

Можно реализовать такое средствами крона?
Автор: OOD
Дата сообщения: 06.07.2006 01:32
peveks

Помоему так ,если не ошибаюсь
в начале ставиться время на выполнение

Time: 0 10 * * * *
ЗАДАЧА нужная

59 RANDOM DUP 1+ 60000 * PAUSE следующее
59 RANDOM 1+ 60000 * PAUSE.

Дальше запускаем приложение которое будет выполнять задачу рандомно

#( запускает задачу в промежутке от 1 до 60 минут
Action:
59 RANDOM DUP 1+ 60000 * PAUSE
0=
\ Задача
START-APP: "Задача.exe"
1=
\ Задача
START-APP: "Задача.exe"
\ ....
)#
Автор: unreal666
Дата сообщения: 06.07.2006 08:03
OOD
Чего-то не понятно, что ты тут замутил.

Цитата:
в начале ставиться время на выполнение

Time: 0 10 * * * *
ЗАДАЧА нужная

59 RANDOM DUP 1+ 60000 * PAUSE следующее
59 RANDOM 1+ 60000 * PAUSE.

В начале чего? И где тут тело задачи, а где условие?

Цитата:
#( запускает задачу в промежутке от 1 до 60 минут
Action:
59 RANDOM DUP 1+ 60000 * PAUSE
0=
\ Задача
START-APP: "Задача.exe"
1=
\ Задача
START-APP: "Задача.exe"
\ ....
)#

А здесь где условие? И с чем ты сравниваешь 0= и 1= (кстати слова 1= нет), если у тебя на стеке осталось число от 0 до 58 (из-за Dup)?

peveks
Давай конкретнее условия.
Что является началом запуска задачи? Т.е. вдруг у тебя комп в 10.00 будет отключен, что делать тогда при включении допустим в 11.00?
Что является концом задачи? Т.е. тебе нужно. чтобы задача работала бесконечно (т.е. пока не выключишь комп, но если будет работать больше суток, то и задача буедт работать все время) или до наступления какого-либо события, например:
- время 19:02
- запустился процесс (например игра); временно приостановить задачу, а после выхода из игры, продолжить
- и т.д. и т.п.
Автор: peveks
Дата сообщения: 06.07.2006 10:56
unreal666
Комп у меня включен. А если конктретнее то задача заключается в следующем :
1. Запускается приложение
2. Подводится курсор к полю ввода формы
3. Удаляется существующий текст форы
4. Вводится другой текст
5. Мышь подводится к кнопке и нажимает ее
6. Закрывается окно приложения.

Хотелось бы чтобы это задание срабатывало через определенные промежутки времени (случайным образом выбирая вмремя следующего срабатывания между одной минутой и часом после последнего срабатывания).
Автор: unreal666
Дата сообщения: 06.07.2006 11:52
peveks
Основной вопрос был в том, какое условие необходимо для остановки задачи, а то она будет работать пока ты не выключишь комп. Т.е. например задача должна работать в промежутке времени 10:00-18:00.
Автор: peveks
Дата сообщения: 06.07.2006 12:14
unreal666

Желательно чтобы она работала постоянно пока я сам не вырублю
Автор: unreal666
Дата сообщения: 06.07.2006 12:59
peveks

Тогда вот тебе

Код: #( ЗадачаХ
Time: 0 10 * * * *
\ Строку с RunMissed можешь раскомментировать - по твоему желанию
\ Запуск просроченной задачи в течении 12 часов после 10:00 - это если в 10:00 nnCron не был запущен
\ RunMissed: 12:00
Action:
BEGIN
START-APP: путь_до_твоей_проги
\ Делаем паузу от 1 до 60 минут
60 RANDOM 1+ 60000 * PAUSE
AGAIN
)#
Автор: bestwest
Дата сообщения: 06.07.2006 13:30
Помогите пожалуйста разобраться начинающему:

#( Test
Rule: INTERVAL: 10:00-24:59/00:01
Action:
TMSG: "Поехали" 2
FT-CUR FILE-WTIME: "C:\111.txt" FTIME- 3600 >
IF
TMSG: "Выполняем условие 1" 2
\ производим действия
FILE-WTIME: "C:\111.txt" FTIME- 4500 >
IF
\ производим действия
TMSG: "Выполняем условие 2" 2
ELSE
TMSG: "Не Выполняем условие 2" 2
THEN
ELSE
TMSG: "Не Выполняем условие 1" 2
THEN

)#

Логика: Если файл не изменялся какое-то время, производим действия(или не выполняем) потом повторно проверяем файл на изменения и снова выполняем действия(или не выполняем)

При любых времени-дате либо не выполняет(TMSG: "Не Выполняем условие 1" 2), либо не(НЕ!!!) выполняет и ругается на ошибку стека (TMSG: "Выполняем условие 1"+TMSG: "Не Выполняем условие 2" + "Test Ошибка стека в Action")
Автор: Stygis
Дата сообщения: 06.07.2006 13:47
unreal666
Ну можно же ведь остановить и через доп задачу с CLR-CRON-FLAG? Замороченным методом это не будет
Автор: unreal666
Дата сообщения: 06.07.2006 14:03
Stygis
Если задача работает, то ее деактивация не поможет - она будет работать дальше.
Надо будет делать через такую фигню (применительно к данной задаче)

Код: #( Задача1
Time: 0 10 * * * *
VARIABLE task1_flag
RunMissed: 12:00
Action:
GetCurrentThreadId task1_flag !
BEGIN
START-APP: путь_до_твоей_проги
60 RANDOM 1+ 60000 * PAUSE
AGAIN
)#

#( Остановка_задачи1
WINAPI: OpenThread KERNEL32.DLL
Action:
task1_flag @ ?DUP
IF
0 1 OpenThread ?DUP
IF STOP THEN
THEN
)#
Автор: Stygis
Дата сообщения: 06.07.2006 14:06
unreal666
Ну скажем точнее - задача будет работать, но не будет выполняться Точнее не будет выполняться поле Action: (насколько я понял).

Добавлено:
bestwest

Цитата:
FILE-WTIME: "C:\111.txt" FTIME- 4500 >

От чего вычитаешь время записи???
Автор: unreal666
Дата сообщения: 06.07.2006 14:18

Цитата:
Ну скажем точнее - задача будет работать, но не будет выполняться

Слово CLR-CRON-FLAG есть смысл делать, только если задача еще не запущена - это просто программное деактиваци задачи, да и то до первого перечитывания кронтабов. А если задача уже работает в цикле (в данном примере BEGIN...AGAIN), то так ты ее не остановишь.

Добавлено:

Цитата:
От чего вычитаешь время записи???

если ты насчет FTIME- , то это он от текущего времени отнимает время записи.
Автор: bestwest
Дата сообщения: 06.07.2006 14:28

Цитата:
[/q]
[q]Цитата:FILE-WTIME: "C:\111.txt" FTIME- 4500 >

От чего вычитаешь время записи???


FT-CUR FILE-WTIME: "C:\111.txt" FTIME- 4500 >

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566

Предыдущая тема: Как писать кириллицей, а НЕ латиницей (транслитом)


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