Часто задаваемые вопросы


  1. Мне очень нравится программа nnCron LITE (nnCron, nnBackup). Как я могу помочь разработчикам?
  2. Где найти инфоpмацию о языке пpогpаммиpования Фоpт?
  3. Как "приказать" nnCron LITE вести единый лог-файл, а не создавать каждый день новый?
  4. Как автоматизиpовать резервное копирование файлов?
  5. Почему не удается запустить приложение с сетевого диска? Почему приложения, запущенные из nnCron LITE "не видят" сетевых дисков?
  6. Я запускаю плагин каждые две минуты и лог-файл nnCron LITE растет как на дрожжах. Как мне отменить логирование отдельной задачи?
  7. Как запускать программы с помощью ярлыков/шорткатов (*.lnk)?
  8. Мой антивирус рапортует о том, что в дистрибутиве nnCron/nnCron LITE/nnBackup содержится вирус! В чем дело?!!..
  9. Накладывает ли nnCron LITE какие-то ограничения на размер кронтаба, длину строки в кронтабе, общее количество задач?
  10. Комнадный файл не работает, когда я запускаю его из nnCron LITE. В чем может быть дело?

Мне очень нравится программа nnCron LITE (nnCron, nnBackup). Как я могу помочь разработчикам?

Возможны варианты, например:

Не стесняйтесь предложить свой собственный вариант помощи... Проявите фантазию! Спасибо! :)


Где найти инфоpмацию о языке пpогpаммиpования Фоpт?

Специально для тех, кто хочет побольше узнать о Фоpте, автор nnCron пеpевел в "электpонный" вид книжку Leo Broudie Starting Forth (Лео Бpоуди "Hачальный куpс пpогpаммиpования на языке Фоpт"). Это очень доступный текст на pусском языке - http://www.nncron.ru/download/sf.chm (1,5Mb).
Еще pекомендую http://www.forth.org.ru - куча ссылок на все, связанное с Фоpтом, в том числе, и на pусские pесуpсы.

Настоятельно советую всем, кто интересуется Фортом, скачать краткий справочник по основным словам SP-Forth (http://www.nncron.ru/download/spf_help.zip) исходники nnCron (http://www.nncron.ru/download/src.rar) и SP-Forth 3.75 (http://www.enet.ru/win/cherezov/sp-forth.html) - в них хорошо документированы большнство слов, которые вам могут понадобиться.

В дополнение - несколько ссылок на англоязычные ресурсы:


Как "приказать" nnCron LITE вести единый лог-файл, а не создавать каждый день новый?

Для этого надо изменить значения переменных Cronlog и (опционально) LogTimeFormat в cron.ini:

\ path of log
Cronlog: "log\nncron.log" 
 \ log time pattern
LogTimeFormat: "%DD% %MMM% %hh%:%mm%:%ss% %ThreadId%"

Как автоматизиpовать резервное копирование файлов?

Воспользоваться консольной пpогpаммой nnBackup, которая идеально подходит для совместной работы с nnCron и nnCron LITE.

nnBackup позволяет использовать все распространенные методы резервного копирования:

Кроме этого, nnBackup поддерживает сжатие архивных данных по алгоритмам gz/zip, работает с файл-листами, имеет специальные средства для удаления неактуальных данных из резервной копии.


Почему не удается запустить приложение с сетевого диска? Почему приложения, запущенные из nnCron LITE "не видят" сетевых дисков?

Дело в том, что в ВинНТ/2000/ХР nnCron LITE запускается сервисом, от имени SYSTEM (это встроенный пользовательский аккаунт). А у пользователя SYSTEM нет прав на доступ к сетевым дискам.

Возможны следующие пути решения этой проблемы:


Я запускаю плагин каждые две минуты и лог-файл nnCron LITE растет как на дрожжах. Как мне отменить логирование отдельной задачи?

Используйте специальный символ - тильду ('~') для того, чтобы принудительно отменить логирование указанной задачи. Например, если вы запускаете плагин, то тильду надо поставить перед восклицательным знаком:

# запуск этой задачи не будет отражен в лог-файле
*/2 * * * * ~!MY_PLUGIN

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

# запуск этой задачи не будет отражен в лог-файле
*/5 * * * * ~c:\test\reminder.bat

Если вам не нравится тильда, вы можете поменять ее на любой другой доступный символ. Для этого добавьте следующие строки в свой cron.ini:

\ меняем ~ на *
CHAR * TO NoLogPrefix

Как запускать программы с помощью ярлыков/шорткатов (*.lnk)?

Если не нужна авторизация, то так:

* * * * * !5 0 0 Z" c:\temp\cmd.exe.lnk"  Z" open" 0 ShellExecuteA DROP
* * * * * !5 0 0 Z" c:\temp\notepad.exe.lnk"  Z" open" 0 ShellExecuteA DROP

Для успешной авторизации AsLoggedUser, синтаксис придется немного усложнить. Откройте свой любимый текстовой редактор, создайте файл run_shortcut.js и поместите следующие строки (обратите внимание на "прямые" слеши в пути к шорткату):

var WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run("c:/temp/cmd.exe.lnk");
WshShell.Run("c:/temp/notepad.exe.lnk");

Теперь вы можете вызывать этот скрипт так:

* * * * * wscript.exe run_shortcut.js

Мой антивирус рапортует о том, что в дистрибутиве nnCron/nnCron LITE/nnBackup содержится вирус! В чем дело?!!..

Не волнуйтесь, никаких вирусов и троянов в дистрибутивах наших программ нет. Вы столкнулись с типичным "ложным срабатыванием" антивируса. Особенно часто этим грешит антивирус NOD32, который, похоже, считает вирусами все программы, написанные на языке программирования Форт (SP-Forth). Если вы хотите помочь исправить ситуацию, то вам стоит отправить разработчикам антивируса ссылку на нашу программу с баг-репортом о ложном срабатывании.


Накладывает ли nnCron LITE какие-то ограничения на размер кронтаба, длину строки в кронтабе, общее количество задач?

Фактическое ограничение только одно: длина одной строки в кронтабе не должна превышать 512 символов.
Каждая задача nnCron LITE компилируется в отдельное Форт-слово и помещается в общее адресное пространство словаря Форта, которому выделено 512 килобайт. В этом же пространстве содержится и сам код nnCron LITE, и различные вспомогательные слова. Вцелом, под задачи остается примерно 300-350 килобайт памяти. В обычных условиях этого должно хватать больше чем на тысячу задач - ограничение, продиктованное здравым смыслом.


Комнадный файл не работает, когда я запускаю его из nnCron LITE. В чем может быть дело?

Самая распространенная проблема - это использование относительных путей в командном файле без явного указания рабочего каталога (при запуске программы или командного файла из nnCron LITE рабочим каталогом становится каталог, в котором находится файл cron.exe).

Возможны следующие пути решения этой проблемы: