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

» nnCron

Автор: rosalin
Дата сообщения: 01.11.2008 13:58
DJ makrus

пропадает доступ в нет
скорее можно сделать проверку ping
Автор: DJ makrus
Дата сообщения: 01.11.2008 15:19
rosalin
Цитата:
скорее можно сделать проверку ping
Для этого см. слово HOST-EXIST: , но это как мне кажится не очень надежный способ, ведь должен пинговаться какой-то сайт/комп, а если они не доступны?
Может служба начинает "кушать" процессорное время или появляются какие-нибудь окна/файлы/итд или наборот перестают появляться, может имеется окно (неважно видимое/невидимое) которое висит "зависшем" (см. слово WIN-NOT-RESPOND:)?
Автор: nnmregistered
Дата сообщения: 06.11.2008 16:55
Подскажите плиз!! Весь мозг сломал...

Мне нужно чтобы в разных задачах переменные назывались одинаково. К примеру:

#( NEW_1
USER-CREATE task_name 128 USER-ALLOT
AsLoggedUser
LoadProfile
Time: 00 1 * * * *
Action:
S" Задача 1: " task_name PLACE
MSG: "%task_name COUNT%"
)#

#( NEW_2
USER-CREATE task_name 128 USER-ALLOT
AsLoggedUser
LoadProfile
Time: 00 1 * * * *
Action:
S" Задача 2: " task_name PLACE
MSG: "%task_name COUNT%"
)#

Имя переменной task_name - должно быть одинаковым.

Так вот в при таком написании - работает только задача номер 2, а первая возвращает "ничего" вместо значения...

Описание nncron по этому вопросу очень скудное...
Автор: DJ makrus
Дата сообщения: 07.11.2008 11:03
andreir
Цитата:
...попробовал все работает перемещает файлы которые не менялись в течении 10 минут как положенно...
Вот и хорошо, добавил задачу в шапку в раздел "Полезные самодельные задачи для сабжа на Ru-Board'е"

nnmregistered
Цитата:
Мне нужно чтобы в разных задачах переменные назывались одинаково.
1. Для этого используй одну и ту же переменную, а не уникальные для каждой задачи.
2. Видимо USER-CREATE и USER-ALLOT используются не случайно, и поскольку, так их использовать (с одинаковыми именами) нельзя, то освети целиком всю задачу и алгоритм ее решения для которых тебе нужны и USER-переменные и что бы у них были имена одинаковые . Наверняка эту задачу можно решить другим способом
Цитата:
Так вот в при таком написании - работает только задача номер 2, а первая возвращает "ничего" вместо значения...
и пишет в nncron.out об неуникальности используемых имен , если кратко, то дело в том что в общем случае (и в данном тоже) переменные как и остальные Форт-слова сохраняются в виде списка, при обращении к слову, оно по имени ищется в этом списке (словаре) и выполняется первое попавшееся (поиск идет с конца словаря, т.е. будет выполняться то слово/переменная которое было определено последним). В данном случае в словаре есть два адреса с одинаковым имененем task_name. В "теле" задачи в первой строчке (где "присваивается" конкретная строка) идет обращение к имени переменной в момент выполнения, а во второй во время компиляции... Поэтому во время компиляции первой задачи компилируется адрес первой переменной (т.к. до второй задачи компиляция еще не дошла и в словаре пока что только одна такая переменная), а вот во время исполнения строка "Задача 1: " кладется по адресу который возвращает вторая скомпилированная переменная (т.к. в словаре уже две переменых, но поиск останавлявается на последней - второй), вот и получается что мы кладем строку по одному адресу, а получить пытаемся с другого (в который ничего не положено).
Во второй же задаче такой проблемы нет, т.к. там и при компиляции и при выполнении идет обращение к одному и тому же адресу в памяти который хранится во второй переменной. Вот
Автор: lucky_Luk
Дата сообщения: 08.11.2008 01:00
DJ makrus

Цитата:
Для этого см. слово HOST-EXIST: , но это как мне кажится не очень надежный способ, ведь должен пинговаться какой-то сайт/комп, а если они не доступны?

Для таких случаев есть сервера синхронизации времени, посмотри в настройках часов в Винде, или сервера google. Для полной уверенности можно зацепиться за пару поисковых сервисов конструкцией c двумя HOST-EXIST: и OR .

Автор: lucky_Luk
Дата сообщения: 09.11.2008 13:07
Как сделать чтобы задача запускалась раз в сутки, но не ночью, не в период с 0 часов до 6 часов?
Т.е. если комп включен и настает 0 часов, то задача запускаться не должна, но она должна запуститься, если в эти же сутки днем или вечером компьютер включат еще раз.
Автор: frozen2
Дата сообщения: 09.11.2008 17:15
Подскажите, как правильно написать скрипт для отключения монитора. В справке конкретных примеров не нашел, только ключевое слово "MONITOR-OFF".
Запускаю скрипт:


Код:
#( MONITOR-OFF
AsLoggedUser
LoadProfile
User: "111" SecPassword: "111" Domain: "111" LogonInteractive
WatchHotKey: "@^{SUBTRACT}"
Action:
MONITOR-OFF
)#
Автор: wyxa
Дата сообщения: 09.11.2008 17:20
frozen2
не следует называть задания ключевыми словами
Цитата:
#( MONITOR-OFF
AsLoggedUser
LoadProfile
User: "111" SecPassword: "111" Domain: "111" LogonInteractive
WatchHotKey: "@^{SUBTRACT}"
Action:
MONITOR-OFF
)#
Полагаю, ошибка именно в этом.

Добавлено:
lucky_Luk

Цитата:
Как сделать чтобы задача запускалась раз в сутки, но не ночью, не в период с 0 часов до 6 часов?
Т.е. если комп включен и настает 0 часов, то задача запускаться не должна, но она должна запуститься, если в эти же сутки днем или вечером компьютер включат еще раз.

Попробуй так:

Код: #( TaskEachDayNotNight
RunMissed: 18:00
Time: 0 6 * * * *
Action:
<Задача>
)#
Автор: frozen2
Дата сообщения: 09.11.2008 19:05

Цитата:
не следует называть задания ключевыми словами

Спасибо, помогло.
Автор: DJ makrus
Дата сообщения: 10.11.2008 07:46
lucky_Luk
Цитата:
Для таких случаев есть сервера синхронизации времени...
Тоже как и с пингом хоста - через одно место, т.к. целиком и полностью зависешь от дополнительный, сторонних факторов (доступность сайтов, работы вышестоящего провайдера...) при решении проблемы на локальной машине
Цитата:
Как сделать чтобы задача запускалась раз в сутки ... не в период с 0 часов до 6 часов?

Код: Rule: INTERVAL: 00:00-6:00 0=
Автор: lucky_Luk
Дата сообщения: 11.11.2008 00:03
DJ makrus

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

Увы, потому что данным Винды доверять нельзя. Винда умудряется показывать мигающие мониторчики и наличие соединения даже когда ни с одним сайтом соединиться нельзя, а модем сообщает о явных проблемах на канале.
Автор: lucky_Luk
Дата сообщения: 11.11.2008 21:34
DJ makrus

Цитата:
Rule: INTERVAL: 00:00-6:00 0=

Проверь, работает ли у тебя эта конструкция. Если запуск попал на "ночь", то запускается ли задача днем в эти же сутки или нет?

У меня задача с похожей конструкцией

Код:
OnceADay
Rule: INTERVAL: 00:00-06:00 NOT
Автор: DJ makrus
Дата сообщения: 12.11.2008 08:16
lucky_Luk
Цитата:
Если запуск попал на "ночь", то запускается ли задача днем в эти же сутки или нет?
Не понял что значит "на ночь"?
Если в 23.00, то в эти же сутки дня уже не будет...
Если в 2.00, то согласно условию в Rule: запуска произойти не должно, если же ты ее сам вручную запускал , то в эти же сутки ни утром в 6.01 ни днем ни вечером она не запустится из-за OnceADay
Цитата:
и есть подозрение, что она при таком раскладе днем не запускается.
При таком раскладе, если в эти сутки она еще не запускалась (см. файл nnCron\etc\once.txt ), то она запустится .
Цитата:
Впечатление, что когда настает 0 часов, задача проверяет попадание в Rule: и останавливается, и при запуске компа днем - она не запускается, а ждет прихода следующих суток.
В 0 часов она не останавливается, а просто игнорируется, т.к. условия в "шапке" задачи не соотвествуют текущим, аналогично и в 0.01 и в 0.02 и т.д. до 6.01 когда задача должна будет запуститься первый и последний раз в текущие сутки...
У тебя в "шапке" задачи больше никаких условий нет?
Цитата:
Увы, потому что данным Винды доверять нельзя. Винда умудряется показывать мигающие мониторчики и наличие соединения даже когда ни с одним сайтом соединиться нельзя, а модем сообщает о явных проблемах на канале.

1. Если я не ошибаюсь и правильно предполагаю как у тебя все организовано, то винда и не должна следить за сайтами в сети и проблемами на канале после модема, модем работает - значит соединение есть, есть обмен данными через сетевую карту...
2. У человека программа зависает, у него на компе, а не у провайдера или у хостера, то что через эту программу раздается инет, позволяет предположить что если инета нет значит она зависла, но это не единственная причина по которой может отсутствовать инет, более надежно определять именно зависание самой программы, почти наверняка это можно сделать
Автор: shaggoth
Дата сообщения: 12.11.2008 11:13
скринсейвер средствами крона
такая конструкция сработает?

Time: */10 * * * * *
Rule: IDLE: 3600
Action:
ShowMinimized NormalPriority
MONITOR-OFF


ну и включать его потом тоже надо придумать. по нажатию кнопки видимо
Автор: DJ makrus
Дата сообщения: 12.11.2008 12:45
shaggoth
Цитата:
скринсейвер средствами крона
имеется ввиду простое выключение монитора? Или запуск программы-скринсейвера?
Если первое, то да, сработает, только ShowMinimized и NormalPriority не нужны, а включаться монитор, выключеный таким способом, будет по любому нажатию кнопки/движению_мыши.
Если в эту задачу добавить еще и срабатывание по хоткею, то будет еще удобнее: уходишь - нажал - погас монитор, а если забыл нажать, то он сам погаснет через не более чем 10 минут и не менее чем через 3,6 сек. (в большинстве случаев )
Автор: Eric Lazzy
Дата сообщения: 12.11.2008 13:40
камрады, как можно заставить планировщик запускать презентацию PowerPoint?

Цитата:
имеется презентация PowerPoint в виде демонстрации *.pps
при даблклике (запуске) вручную она нормально демострируется и делает всё что ей положенно (смена кадров и т.д.)
а если я помещаю в планировщик этот же файл как задачу - оно открывает файл в PowerPoint для редактирования
как сделать чтоб запускалась демонстрация?

Цитата:
а если посмотреть в типах файлов с помощью какой строки\команды задается открытие для .pps -файлов, и в планировщик указывать команду точно таким же образом.... не поможет?

Цитата:
прописывание ключей из типов файлов результато не дало..
C:\Program Files\Microsoft Office\OFFICE11\POWERPNT.EXE" /p "%1

цитаты из топика по офису
Автор: DJ makrus
Дата сообщения: 12.11.2008 14:00
Eric Lazzy
Цитата:
прописывание ключей из типов файлов результато не дало..
что бы уж точно не ошибиться, запусти файл двойным кликом и в таскменеджере (не виндовом) скопируй командную строку для процесса PowerPoint и здесь ее покажи, я напишу задачку.
Автор: shaggoth
Дата сообщения: 12.11.2008 14:29
DJ makrus
нет, я имел в виду замену скринсейверу так сказать по хоткею можно, но обычно я не пользуюсь ими особо.
ЗЫ: а интервал такой длинный потому, что если смотришь киношку на intv.ru, зверски задалбываешся мотать мышкой
Автор: Eric Lazzy
Дата сообщения: 12.11.2008 15:03
DJ makrus

Цитата:
в таскменеджере (не виндовом)

ээ.. а каком?
Автор: DJ makrus
Дата сообщения: 12.11.2008 15:53
shaggoth
Цитата:
нет, я имел в виду замену скринсейверу так сказать...
нет чему? первому предложеному мною варианту или второму , наверное все-таки второму...
Цитата:
а интервал такой длинный потому, что если смотришь киношку на intv.ru, зверски задалбываешся мотать мышкой
Про какой интервал речь? про 10-минутный или на 3,6 сек.? Я киношку там не смотрю, поэтому вообще не представляю о чем речь..., задача-то заработала нормально?

Eric Lazzy
Цитата:
ээ.. а каком?
любом который позволяет увидеть (и скопировать) командную строку запущенного процесса, например от Sysinternals
Автор: lucky_Luk
Дата сообщения: 12.11.2008 20:21
DJ makrus

Цитата:
Если в 23.00, то в эти же сутки дня уже не будет...
Если в 2.00, то согласно условию в Rule: запуска произойти не должно, если же ты ее сам вручную запускал , то в эти же сутки ни утром в 6.01 ни днем ни вечером она не запустится из-за OnceADay


Цитата:
В 0 часов она не останавливается, а просто игнорируется, т.к. условия в "шапке" задачи не соотвествуют текущим, аналогично и в 0.01 и в 0.02 и т.д. до 6.01 когда задача должна будет запуститься первый и последний раз в текущие сутки...

Спасибо, теперь понял.


Цитата:
При таком раскладе, если в эти сутки она еще не запускалась (см. файл nnCron\etc\once.txt )

Посмотрел, хочу уточнить. В этом файле отображаются только те задачи, которые в текущие сутки еще не запускались?

Теперь другая задача. Есть конструкция вида

Код:
SingleInstance
AsLoggedUser
Rule: INTERVAL: 08:00-00:00/08:00
Action:
Автор: DJ makrus
Дата сообщения: 13.11.2008 08:11
lucky_Luk
Цитата:
Посмотрел, хочу уточнить. В этом файле отображаются только те задачи, которые в текущие сутки еще не запускались?
Нет, в тех строках где упоминаются имена задач, записано время последнего запуска задачи.
Цитата:
В этом случае задача запуститься сразу при включении компьютера или будет ждать окончания очередного 8-часового периода...
задача запустится когда условие в шапке будет истинным, т.е. без RunMissed будет ждать, а с ним запустится, если был момент времени когда задача должна была запуститься, но она не запускалась , т.е. если ты хочешь что бы запускались "просроченные" задачи - используй RunMissed, все это более подробно расписано в Help'е в "Управление запуском просроченных задач "
Автор: Eric Lazzy
Дата сообщения: 13.11.2008 12:18
DJ makrus

Цитата:
что бы уж точно не ошибиться, запусти файл двойным кликом и в таскменеджере (не виндовом) скопируй командную строку для процесса PowerPoint и здесь ее покажи, я напишу задачку.

вот такая вроде

Цитата:
"C:\Program Files\Microsoft Office\OFFICE11\powerpnt.exe" /s "C:\france.pps"


зы
сенки за таскменеджер
Автор: DJ makrus
Дата сообщения: 13.11.2008 16:10
Eric Lazzy
Цитата:
вот такая вроде...
Вот задачка
Код: #( PowerPoint
SingleInstance
AsLoggedUser
Time: 10 8 * * 1-5 *
Action:
StartIn: "C:\Program Files\Microsoft Office\OFFICE11"
START-APP: "C:\Program Files\Microsoft Office\OFFICE11\powerpnt.exe" /s "C:\france.pps"
)#
Автор: Z4masko
Дата сообщения: 13.11.2008 20:15
Подскажите как с помощью nncron сделать следующее:
Есть программа которая запускается сервисом вместе с Windows
Программа при запуске сворачивается в трей справа внизу (около часиков)
я не хочу чтобы значок программы был виден
Один человек в другом разделе форума написал ,что это можно как то сделать с помощью посала программе команды: Window_hide
Но как сделать этот посыл программе, если програмам запускается не через nncron а сама (собственными средставми с помощью сервисов Windows)? То есть как дать уже запущенной программе команду windows_hide или как запустить её с помощью nncron как сервис при старте windows и спрятать её ?
Автор: shaggoth
Дата сообщения: 13.11.2008 22:14
DJ makrus
интервал мне надо в два часа задача заработала
Автор: Eric Lazzy
Дата сообщения: 14.11.2008 08:45
DJ makrus
запускается ура! спасибо
только почему-то стала ругаться на неверные параметры

а 22-ф строка вроде параметров не имеет

Код: #CRONTAB FILE
# Classic crontab format:
# Minutes Hours Days Months WeekDays Years Command
# see 'example.tab'

#( purge-cron-log
Time: 0 12 * * 5 *
Action: PURGE-OLD: "log\*.log" 7
)#

#( tot

#( PowerPoint
SingleInstance
AsLoggedUser
Time: * 8 * * 1 *
Action:
StartIn: "C:\Program Files\Microsoft Office\OFFICE11"
START-APP: "C:\Program Files\Microsoft Office\OFFICE11\powerpnt.exe" /s "D:\tot-.pps"
)#

)#

Автор: DJ makrus
Дата сообщения: 14.11.2008 14:30
Z4masko
Цитата:
Но как сделать этот посыл программе, если програмам запускается не через nncron а сама...
Послать то можно, но надо знать какому окну, а для этого тебе потребуется сделать некоторые непростые телодвижения..., давай сначала попробуем запустить эту программу nnCron'ом как сервис в скрытом режиме, может поможет...
Открой в каком-нибудь тектовом редакторе файл nncron.tab он должен быть в папке с установленным nnCron'ом, и добавь туда задачу:
Код: #( SrviceHidden
Time: START-TIME
Action:
SWHide NormalPriority
AsService
StartIn: "C:\Program Files" \ замени здесь путь в кавычках до путя к нужной тебе программы
START-APP: C:\Program Files\NOTEPAD.EXE \ здесь тоже укажи полный путь к исполняемому файлу твоей программы
)#
Автор: Eric Lazzy
Дата сообщения: 14.11.2008 17:21
DJ makrus

Цитата:
Потому что вставил в файл неправильно

я просто вставил текст в задачу
спасибо. теперь раболтает

ещё волпрос - как закрывать приложение?
общая задача состоив в том, чтоб поочерёдно с определённым интервалом запускать 2 видео и 1 презентацию в комплекте с винампом
с фильмами понятно - запустил следующий - предыдущий закрылся, а вот с музыкой как?
т.е. запускается винамп, поёт какое-то время, а потом запускается видео и получается два звуковых сопровождения. как этого избежать?
Автор: DJ makrus
Дата сообщения: 15.11.2008 10:58
Eric Lazzy
Цитата:
я просто вставил текст в задачу
в GUI-форму составления задачи? Надо было в кронтаб в тектовом редакторе, извини не предупредил
Цитата:
т.е. запускается винамп, поёт какое-то время, а потом запускается видео и получается два звуковых сопровождения. как этого избежать?
По WatchProc: отлавливаешь момент запуска презентации и с помощью PROC-CLOSE: закрываешь процесс WinAMP

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

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


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