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

» nnCron

Автор: xvarx
Дата сообщения: 09.05.2011 18:50
а зачем вообще время синхронизировать? настроить стандартную службу и будет само синхронизировать.
если разница знать не нужно, то стандартно в винде
w32tm /resync [/computer:<компьютер>]
Автор: LEX1
Дата сообщения: 09.05.2011 20:14

Цитата:
TP-SYNC: utcnist.colorado.edu

Возможно лучше было бы рандомно брать ntp1.vniiftri.ru - ntp4.vniiftri.ru
Видимо, так: TP-SYNC: "ntp%4 RANDOM 1+%.vniiftri.ru"

xvarx
А зачем запускать лишнюю службу? nnCron у меня и так работает.
Автор: xChe
Дата сообщения: 09.05.2011 20:27
У меня так:

Код: #( SystemTime_SYNC
RunMissed
Time: 0 0 * * * *
Rule: HOST-EXIST: "8.8.8.8" \ DNS ping
Action:
5 0 DO
TP-SYNC: sundial.columbia.edu
TP-SYNC-RESULT 0= IF LEAVE THEN
PAUSE: 10000
LOOP
TP-SYNC-RESULT 0<>
IF
     PLAY-SOUND: "c:\Windows\Media\Windows XP - ошибка.wav"
3 BalloonIcon !
BALLOON: "Ошибка!" "Нет связи с сервером точного времени!"
ELSE
PLAY-SOUND: "c:\Windows\Media\Windows XP - уведомление.wav"
GET-CUR-TIME
1 BalloonIcon !
BALLOON: "Системное время синхронизировано." "Текущее время: %hh%:%mm%:%ss%%CRLF%Время отклика сервера: %TP-SYNC-DELAY% мс."
THEN
)#
Автор: AlikasS
Дата сообщения: 11.05.2011 17:08
из старых запасов

Код: #( синхронизация_с_серверами_из_файла
OnceADay
NoLog
VARIABLE time_server_list
CREATE time_server_file 256 ALLOT S" time.txt" time_server_file ZPLACE
CREATE curNtpSrv 256 ALLOT
: next-line ( -- ?)
curNtpSrv 1+ 255 time_server_list @ READ-LINE 0<> SWAP 0= OR
IF DROP FALSE ELSE curNtpSrv C! TRUE THEN ;
: sync-time ( -- ?) TP-SYNC: "%curNtpSrv COUNT%" TP-SYNC-RESULT 0= ;
VARIABLE flagSynchronized
Action:
FILE-EXIST: "%time_server_file ASCIIZ>%" FILE-EMPTY: "%time_server_file ASCIIZ>%" NOT AND
IF
    flagSynchronized OFF
    time_server_file ASCIIZ> R/O OPEN-FILE-SHARED THROW time_server_list !
    BEGIN next-line WHILE
    sync-time
        IF
        flagSynchronized ON
        1 BalloonIcon !
        BALLOON: "NTP Update Succeeded" "Synchronized with %curNtpSrv COUNT% (%TP-SYNC-DELAY% ms)"
        ." NTP : synchronized with " curNtpSrv COUNT TYPE ." (" TP-SYNC-DELAY . ." ms)" CR
        ELSE
        ." NTP : could not sync with " curNtpSrv COUNT TYPE CR
        THEN
    flagSynchronized @
    UNTIL

    flagSynchronized @ 0=
        IF
        HINT-OFF
        \ HINT-POS: 837 960 HINT-SIZE: 436 27
        HINT: "NTP Error: Could not synchronize with any of the time servers provided."
        ." NTP Error: Could not synchronize with any of the time servers provided." CR
        THEN
    time_server_list @ CLOSE-FILE DROP
ELSE
    3 BalloonIcon !
    BALLOON: "NTP Configuration Error" "The '%time_server_file ASCIIZ>%' file is missing or empty."
THEN
)#
Автор: LEX1
Дата сообщения: 15.05.2011 00:31
Да, спасибо почерпнул некоторые идеи для себя.
Автор: asvoituk
Дата сообщения: 22.05.2011 13:42
Добрый день.
Давиче наткнулся на интересный сайт с описанием примеров работы nncron.
Вот адрес http://articles.asksoft.net/index.htm
Предлагаю поместить в шапку как пример
Ссылку дал с разрешения автора
Автор: Victor_VG
Дата сообщения: 22.05.2011 18:33
asvoituk

Вот только его сборка что подозрительно многое делает судя по описанию, а по размеру не столь велика, но главное не проверяема - инсталятор у неё какой то самопальный. Не жалую я такую "самостоятельность" программ - частенько такое их поведение вызывает после проблемы.
Автор: wsadneg
Дата сообщения: 30.05.2011 19:20
Здравствуйте. Уже не первый год пользуюсь ннкроном, но так до сих пор и не смог решить проблему: когда залогинен юзер без прав админа, при попытке запустить задачу с правами админа - получаю испорченный gui, такой как на скрине http://img192.imageshack.us/img192/4797/tcpd.th.png .
Можно конечно запускать с системной учёткой, но это не есть гуд.
Вот пример скрипта:

Код:
User: "Admin" SecPassword: "****" Domain: "mydomain" LogonInteractive
WatchHotKey: "$w"
Action:
StartIn: "C:\Program Files\sysinternal"
ShowNormal NormalPriority
START-APP: C:\Program Files\sysinternal\Tcpview.exe
Автор: AlikasS
Дата сообщения: 01.06.2011 16:08
wsadneg
а если кроном запустить батник, в котором запускается Tcpview.exe?
с обязательным User: "Admin" SecPassword: "****" Domain: "mydomain" LogonInteractive
и LoadProfile
P.S. Admin хоть раз входил в систему? т.е. его папка с профилем есть на компе?
Автор: wsadneg
Дата сообщения: 02.06.2011 17:34
Админ входил много раз, батник пробовал, с загрузкой профиля и без и ещё много комбинаций перепробовал (с загрузкой профиля при помощи Psexec и т.п.). И на разных операционках - xp pro, xp home, 2003 сервер. Результат тот же. Только недавно случайно выяснил, что этот эффект проявляется, когда залогинен юзер без прав админа. Может каких-нибудь прав не хватает?
Автор: AlikasS
Дата сообщения: 03.06.2011 11:50
wsadneg попробуй задачу

Код: User: "Admin" SecPassword: "****" Domain: "mydomain" LogonInteractive
LoadProfile
WatchHotKey: "$w"
Action:
START-APP: nncron.exe -runfile script_.txt
Автор: wsadneg
Дата сообщения: 06.06.2011 09:59
AlikasS, то же самое, битый gui
Автор: AlikasS
Дата сообщения: 07.06.2011 16:40
wsadneg
интересно, я так понял psexec запускает все как надо? и через крон ком.строкой?
Автор: wsadneg
Дата сообщения: 07.06.2011 17:58
psexec запускает как надо только если батник запустить от имени пользователя, выполнившего логон или запустить батник напрямую из системы, что меня не устраивает, так как у юзера в этом случае должны быть права на чтение/запуск, а пароль админа в батнике при этом лежит в открытом виде, и ещё psexec понимает не любые пароли. В общем хотелось бы обойтись без psexec или накрайняк запускать его не из-под юзера.
Автор: doc58_81oB0t
Дата сообщения: 08.06.2011 13:09
поставил v.1.93 beta 10 под win2008, при старте системы упорно создает папку C:\Program откуда и запускается хотя есть папка со всем нужным в program files а также в папке пользователя админ\appdata\roaming\nncron

в реестре путь верный, сервис стартует из program files\nncron
Автор: vizlipuzli
Дата сообщения: 08.06.2011 13:36
doc58_81oB0t
Я в корень диска С ставил крон. А еще можно для запуска из указанной директории параметр -dir использовать (поиском по "Версия для печати", примеры есть).
Автор: AlikasS
Дата сообщения: 09.06.2011 07:15
wsadneg попробуй задачу с привлечением psexec.exe

Код: <%
: setuser S" domain\username" ;
: secpass S" secpassword" ; \ зашифрованный пароль
: setpass secpass DecP ;
%>
#( CLASSIC-TASK-#-запуск_от_др.юзера
\ NoActive
NoLog
WatchHotKey: "$w"
Action:
SWHide \ NormalPriority
START-APP: progs\psexec.exe -u %setuser% -p %setpass% %QUOTE%C:\Program Files\Far\Far.exe%QUOTE%
)#
Автор: wsadneg
Дата сообщения: 09.06.2011 20:17
AlikasS, попробовал, работает если поставить AsLoggedUser, это уже почти то, что надо, пасс скрыт, даже шифрованный, сенкс.
Автор: AlikasS
Дата сообщения: 12.06.2011 16:56
[more=CronScript.spf]
Код: \ File: CronScript.spf
\ Author: AlikasS
\ Date: 22.12.10
\ Modified: 2011 06 16 11 54 +1100 AlikasS,
\ после выполнения кода с CronScript-EVAL-ON, выполняется слово CronScript-EVAL-OFF (выключение обработки %%)
\ Words: <CronScript> </SCRIPT> CronScript-EVAL-OFF CronScript-EVAL-ON
\
\ Usage:
\ <CronScript> <команды крона> </SCRIPT>
\
\ Settings:
\ CronScript-EVAL-OFF / CronScript-EVAL-OFF - для включения/выключения обработки переменных nncron между знаками %% в тексте команд
\
\ Description:
\ 1. Позволяет писать код для исполнения его отдельным процессом крона по ключу -runfile прямо в тексте задачи
\ Action:
\ <CronScript>
\ : main 1000 PAUSE MSG: "исполняем код" ;
\ </SCRIPT>
\
\ 2. CronScript-EVAL-ON - для включения возможности использоваться макро-переменные nnCron,
\ окруженные с двух сторон знаками процента (%).
\
\ 3. CronScript-EVAL-OFF - (по умолчанию) %% не обрабатываются.

0 [IF] \ this is a comment string

Example:

#( ~test-start-bat
AsLoggedUser
NoActive
Action:
<CronScript>
: main
MSG: "скрипт крона"
;
</SCRIPT>
)#

[THEN] \ this is a comment string

VECT <CronScript-exec>

: cronscript-exec2 ( a u a1 u1 --)
S" %GetCurrentThreadId ABS%_%GetTickCount%.FEX" EVAL-SUBST SCR-FNAME 2!
SCR-FNAME 2@ R/W CREATE-FILE 0=
IF >R
R@ WRITE-FILE THROW
R> CLOSE-FILE DROP
StartIn: "%ModuleDirName%"
S" %ModuleDirName%nnCron.exe -runfile" EVAL-SUBST S" " S+ S" %SCR-FNAME 2@%" S+ EVAL-SUBST StartScriptApp
SCR-FNAME 2@ DELETE-FILE THROW
ELSE
2DROP
THEN
;

: CronScript-EVAL-OFF ['] cronscript-exec2 TO <CronScript-exec> ; CronScript-EVAL-OFF

: cronscript-exec3 ( a u a1 u1 --)
S" %GetCurrentThreadId ABS%_%GetTickCount%.FEX" EVAL-SUBST SCR-FNAME 2!
SCR-FNAME 2@ R/W CREATE-FILE 0=
IF >R
EVAL-SUBST R@ WRITE-FILE THROW
R> CLOSE-FILE DROP
StartIn: "%ModuleDirName%"
S" %ModuleDirName%nnCron.exe -runfile" EVAL-SUBST S" " S+ S" %SCR-FNAME 2@%" S+ EVAL-SUBST StartScriptApp
SCR-FNAME 2@ DELETE-FILE THROW
ELSE
2DROP
THEN
CronScript-EVAL-OFF
;

: CronScript-EVAL-ON ['] cronscript-exec3 TO <CronScript-exec> ;

: <CronScript> ['] <CronScript-exec> S" </SCRIPT>" <script> ; IMMEDIATE


\EOF

актуально для WIN7
т.к. полностью загружает профиль пользователя
при запуске задачи из под сервиса

#( тестдля7
0 VALUE TRRR
CREATE Str123 125 ALLOT
ONLY_SYSTEM
AsLoggedUser
LoadProfile
Action:

111 TO TRRR
S" внешняя строка" Str123 PLACE

CronScript-EVAL-ON \ включаем обработку %%
<CronScript>
VARIABLE tray_icon_id
0 VALUE TRRR
CREATE Str123 125 ALLOT
S" внутренняя строка" Str123 PLACE
666 TO TRRR
: main
S" nnCron: task started" 32512 0 LoadIconA ADD-TI
tray_icon_id !
HINT: "%%TRRR%% - %TRRR%"
5000 PAUSE
S" nnCron: task continued" 32515 0 LoadIconA tray_icon_id @ MODIFY-TI
MSG: "%%Str123 COUNT%% - %Str123 COUNT%"
tray_icon_id @ DEL-TI
;
</SCRIPT>
)#

Автор: melboyscout
Дата сообщения: 12.06.2011 22:15
wsadneg
А если использовать это
Автор: AlikasS
Дата сообщения: 14.06.2011 16:32
doc58_81oB0t

Цитата:
поставил v.1.93 beta 10 под win2008, при старте системы упорно создает папку C:\Program откуда и запускается хотя есть папка со всем нужным в program files а также в папке пользователя админ\appdata\roaming\nncron

в реестре путь верный, сервис стартует из program files\nncron

правильные пути у крона-сервиса и крона-приложения
правлю таким батником, запуская его в каталоге крона от Администратора,
(у меня частный случай, т.к. крон-сервис и крон-приложение "пасутся" в общей папке,
поэтому батник для их прописывания общий, думаю его можно будет спокойно разделить и убрать лишнее):
[more=reSetnn.bat]
Код: rem файл в кодировке DOS-866,
rem сохранить и запустить в каталоге крона
rem от имени админимстратора

cd %~dp0
cd %CD%

rem настраиваем права доступа
echo setting secure option
cacls "%CD%" /g Все:F /e /c /t
cacls "%CD%" /g Everyone:F /e /c /t
cacls "%CD%" /g All:F /e /c /t
cacls "%CD%" /g Users:F /e /c /t
PAUSE

@echo off

rem прибиваем все процессы крона с дочерними
echo kill process nncron
taskkill /f /t /im nncron.exe
PAUSE

rem удаляем крон-сервис
echo delete service nncron
sc delete nnCron
PAUSE

rem чистим ключи в реестре от крона-приложения
echo delete HKCU\Software\Microsoft\Windows\CurrentVersion\Run key nncron
REG DELETE HKCU\Software\Microsoft\Windows\CurrentVersion\Run /f /v nnCron
echo delete HKLM\Software\Microsoft\Windows\CurrentVersion\Run key nnCron
REG DELETE HKLM\Software\Microsoft\Windows\CurrentVersion\Run /f /v nnCron
PAUSE

rem создание крона-сервиса
echo create service
sc create nnCron type= own type= interact start= auto binPath= "\"%~dp0nncron.exe\" -dir \"%~dp0"
PAUSE

rem старт крона-сервиса
echo start service
net start nnCron
PAUSE

rem создание ключа в реестре для автозапуска крона-приложения для каждого пользователя
echo CREATE HKLM key
REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v nnCron /f /d "\"%~dp0nncron.exe\" -ns -dir \"%~dp0"
PAUSE

rem запуск крона-приложения для текущего пользователя
echo START NNCRON UNDER USER
start "" "%~dp0nncron.exe" -ns -dir "%~dp0"
PAUSE
Автор: wsadneg
Дата сообщения: 14.06.2011 18:43
melboyscout,
ага, спасибки, попробовал, вроде это получше psexec будет, понимает любые пароли, и не светит их, защита крепче Хотя без крона её юзать не получится, т.к. задачи не должны запускаться в любое время.
Автор: AlikasS
Дата сообщения: 16.06.2011 13:13
Запуск и работа nnCron в Win7
и [more=краткое описание]
вот что получилось своими силами
nncron193b10_for_windows7.zip ссылка в подписи.
в архиве 3 файла:

Цитата:
nncron193b10 for windows7.exe
nncron193b10 for windows7.exe.md5
nncron193b10 for windows7.txt.

в последнем описание:

Цитата:
nncron193b10 for windows7.exe - самораспаковывающийся ZIP архив
для установки планировщика nnCron на windows 7 (и не только)

\ -----------------------------------------------------------------------------------------
для установки
nncron193b10 for windows7.exe запустить от имени Администратора.

А можно просто распаковать,
положить куда надо и запустить любой из батников в новом каталоге от имени Администратора:
reSetnn.bat - установка крона-сервиса и крона-приложения в одну общую папку и запуск
InstallOnlyUser.bat - установка и запуск только крона-приложения
InstallOnlyService.bat - установка и запуск только крона-сервиса

\ -----------------------------------------------------------------------------------------

отличия данного мода от оригинала "из коробки" (nncron.exe v 1.93b10 Build 1141 03.12.2009)

- корректная работа в папке с длинным именем и пробелами!!!
- корректный перезапуск с помощью nnguard!!!
- по умолчанию устанавливается в одну общую!!! папку сразу сервисом и приложением
(если не вмешиваться в распаковку и запуск батника reSetnn.bat)
- папка установки на выбор пользователя
- из-за общей папки для сервиса и приложения
изменены пути nncron.out fileinfo.txt taskinfo.txt once.txt (для каждого процесса они свои)
- в настройках крона "непотопляемый режим" как будто отключен, но он работает,
nnguard запущен принудительно, до подключения кронтабов
из за этого на краш-ошибках в плагинах и кронтабах
происходит постоянный перезапуск крона, пока ошибка не будет исправлена
а не просто падение (не успевал запустить nnguard)
отключается комментом в nncron.ini строки RUN-FILE [IF] [ELSE] START-GUARD2 [THEN] )
- подключен плагин CronScript.spf, описание есть в нем и на оф.форуме,
используется для интерактивности сервиса крона и не только...
- разные порты для крона-сервиса и крона-приложения
- введены слова ONLY_SYSTEM и ONLY_USER
их надо использовать в задачах до слова Action:
задачи будут активны только для крона-сервиса (ONLY_SYSTEM)
или только крона-приложения (ONLY_USER)
актуально при установке и запуске в одной папке крона-сервиса и крона-приложения
- подключены многие оф.плагины с сайта
все это реализовано в nncron.ini и батнике reSetnn.bat

\ -----------------------------------------------------------------------------------------

батники

reSetnn.bat
можно использовать:
0. установка крона-сервиса и крона-приложения в одну общую папку и запуск
1.на другой компьютере , для "прописки" перенесенного польностью каталога крона

startnnM.bat:
просто запуск крона-приложения

InstallOnlyUser.bat
установка и запуск только крона-приложения

InstallOnlyService.bat
установка и запуск только крона-сервиса

\ -----------------------------------------------------------------------------------------

Удачи Всем в экспериментах с nnCron,
AlikasS.
отклики приветствуются[/more]
Автор: CRANK
Дата сообщения: 22.06.2011 13:15
AlikasS

Цитата:
nncron193b10_for_windows7.zip ссылка в подписи

Дай нормальную ссылку!
Автор: AlikasS
Дата сообщения: 22.06.2011 13:37
CRANK

Цитата:
Дай нормальную ссылку!


дабы не плодить разные ссылки (которые в последствии иногда приходится править),
на оф.форуме у меня в подписи возьми плиз
Запуск и работа nnCron в Win7
P.S. наберутся посты здесь, будет и здесь подпись
а если ты про сервер где выложена сборка,
то увы,
выделенного пока нет,
а после обкатки мода, попрошу выложить на http://nncron-plugins.narod.ru
Автор: emfs
Дата сообщения: 08.07.2011 16:18
А почему автор перестал выпускать билды?
Проект заброшен?
Автор: AlikasS
Дата сообщения: 09.07.2011 16:14
emfs

Цитата:
А почему автор перестал выпускать билды?
Проект заброшен?

проект приостановлен, ищется новый хозяин
Re: Может уже пора открыть проект для общественности?
Автор: newbie2k6
Дата сообщения: 11.07.2011 09:14
AlikasS
проект приостановлен,

Насколько я понял, проект уже пару лет практически не развивается... Жаль, конечно, но решать разработчику.

ищется новый хозяин

На месте разработчика, я бы предложил nnCron тому же Майкрософту — вдруг купят? Это ж не Скайп, рискнуть небольшой суммой вполне можно.
Автор: AlikasS
Дата сообщения: 12.07.2011 14:02
newbie2k6

Цитата:
Насколько я понял, проект уже пару лет практически не развивается... Жаль, конечно, но решать разработчику.

тут все проще, nncron собран на компиляторе-интерпретаторе языка форт spf (spf forth)
исходники nncron (не последние) и spf доступны,
т.е. зная язык форт и читая исходники
можно некоторое время развивать крон силами энтузиастов
в виде плагинов и правки исходного кода без перекомпиляции планировщика
P.S. что я пытался сделать здесь
Запуск и работа nnCron в Win7
Автор: newbie2k6
Дата сообщения: 13.07.2011 10:45
AlikasS

тут все проще, nncron собран на компиляторе-интерпретаторе языка форт spf (spf forth)
исходники nncron (не последние) и spf доступны,
т.е. зная язык форт и читая исходники
можно некоторое время развивать крон силами энтузиастов
в виде плагинов и правки исходного кода без перекомпиляции планировщика


Это понятно, только сдается мне, что таких энтузиастов относительно мало (как и фортеров вообще).
Форт знаю слабенько, да и в целом программист никакой, но на оф. форум nnCron.ru заглядываю.

<off>
Просто из-за отсутствия должного развития nnCron иногда приходится использовать альтернативные скриптеры.
К примеру, у меня с десяток почтовых ящиков, наличие писем в которых проверяю с помощью nnCron (POP3-...).
Понадобилась еще проверка писем на Gmail с гибкими настройками — перепробовал несколько программ, да всё не то...
Делать нечего, стал искать готовые скрипты. Под nnCron ничего не было, зато нашел 2 скрипта под AutoIt3.
Сделал из них один, выбросив то, что мне не нужно. Не без глюков, но работает.
</off>

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

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


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