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

» nnCron

Автор: ed007
Дата сообщения: 12.03.2011 11:27
Это скорее вопрос к винде - существует ли возможность послать процессу в фоне команду,эквивалентную той,что он получает при нажатии кнопки клавы.
Автор: lucky_Luk
Дата сообщения: 13.03.2011 20:44
Cабж может работать с аттрибутами файлов и папок, очищать их?
А nnBackup?
Автор: unreal666
Дата сообщения: 13.03.2011 21:22
lucky_Luk
Если создашь слова на основе Win API, тогда сможет
Автор: lucky_Luk
Дата сообщения: 14.03.2011 00:35
unreal666

Цитата:
Если создашь слова на основе Win API, тогда сможет

Не умею.
А нужно это чтобы обойти глюк WATCH-CHANGE-LAST-WRITE на NTFS, он должен срабатывать только при создании или изменении файлов в папке, а на NTFS срабатывает и при удалении файлов. Чтобы задача не запускалась при удалении файла, нужно городить что-то для сравнения размера папки, на переменных вне nncron.tab, это уже слишком.
WinRAR может работать с атрибутами файлов и папок, а сабж не может, плохо.
Автор: AlikasS
Дата сообщения: 14.03.2011 03:35
ed007

Цитата:
Это скорее вопрос к винде - существует ли возможность послать процессу в фоне команду,эквивалентную той,что он получает при нажатии кнопки клавы.

надо смотреть
PostMessageA и SendMessageA
P.S. я с ними не работал да и примеров использования мало



lucky_Luk


Цитата:
Cабж может работать с аттрибутами файлов и папок, очищать их?

...как с помощью nnCron изменять атрибуты файлов?


Цитата:
А нужно это чтобы обойти глюк WATCH-CHANGE-LAST-WRITE на NTFS, он должен срабатывать только при создании или изменении файлов в папке, а на NTFS срабатывает и при удалении файлов. Чтобы задача не запускалась при удалении файла, нужно городить что-то для сравнения размера папки, на переменных вне nncron.tab, это уже слишком.

хоть у меня и нет такого глюка,
но можно использовать числа двойной длины в nncron
для хранения размера каталога

Код: #( слежение_за_папкой_на_изменение1
: папка_для_слежения S" C:\arco\" ; \ <-- занести сюда свою папку
2VARIABLE 2sizedir \ создаем переменную
: inivardir RECURSIVE DIR-SIZE: "%папка_для_слежения%"
2sizedir 2!
; inivardir \ и сразу ее инициализируем размером каталога
\ NoActive
WatchDir: "%папка_для_слежения%"
WatchSubtree
WATCH-CHANGE-LAST-WRITE
Action:
RECURSIVE DIR-SIZE: "%папка_для_слежения%"
2DUP 2sizedir 2@ D< >R 2sizedir 2! R>
IF
\ MSG: "размер папки уменьшился"
ELSE
\ MSG: "размер папки увеличился или осталься прежним (перезапись файла)"
THEN
\ дальнейшая работа
)#
Автор: lucky_Luk
Дата сообщения: 14.03.2011 14:09
AlikasS
Спасибо

Цитата:
хоть у меня и нет такого глюка,

Задача с WATCH-CHANGE-LAST-WRITE для папки на NTFS не запускается при удалении файла из папки?
Автор: AlikasS
Дата сообщения: 15.03.2011 02:16
lucky_Luk

Цитата:
Задача с WATCH-CHANGE-LAST-WRITE для папки на NTFS не запускается при удалении файла из папки?
да, все верно.
при удалении файла задача не срабатывает

Код: #( слежение_за_папкой_на_изменение1
: папка_для_слежения S" C:\arco\" ; \ <-- занести сюда свою папку
2VARIABLE 2sizedir \ создаем переменную
: inivardir RECURSIVE DIR-SIZE: "%папка_для_слежения%"
2sizedir 2!
; inivardir \ и сразу ее инициализируем размером каталога
\ NoActive
WatchDir: "%папка_для_слежения%"
WatchSubtree
WATCH-CHANGE-LAST-WRITE
Action:
RECURSIVE DIR-SIZE: "%папка_для_слежения%"
2DUP 2sizedir 2@ D< >R 2sizedir 2! R>
IF
\ MSG: "размер папки уменьшился"
ELSE
\ MSG: "размер папки увеличился или осталься прежним (перезапись файла)"
THEN
\ дальнейшая работа
)#
Автор: lucky_Luk
Дата сообщения: 15.03.2011 11:02
AlikasS

Цитата:
да, все верно.
при удалении файла задача не срабатывает

Тогда почему же у меня срабатывает? Какой версии у тебя сабж, какая ОС?
У меня была эта проблема на XP, теперь и на Windows 7.

Добавлено:
А как у других?
Автор: AlikasS
Дата сообщения: 16.03.2011 03:04
lucky_Luk
nncron.exe v 1.93b10 Build 1141 03.12.2009
Directory: C:\WINDOWS.0\system32\config\SYSTEM~1\AppData\Roaming\nnCron
Windows XP (5.1.2600) Service Pack 3
задача работае на кроне запущенном приложением,
папки нормально отслеживает на своем компе и во внутренней сетке.
на win7rus x86 позже смогу проверить
Автор: lucky_Luk
Дата сообщения: 26.03.2011 20:02
Нужно удалять из папки и ее подпапок файлы, которые старше чем 3 месяца, по календарю. Как сабжем отобрать такие файлы?
Автор: emfs
Дата сообщения: 28.03.2011 00:21
lucky_Luk
смотри на PURGE-OLD
Автор: AlikasS
Дата сообщения: 02.04.2011 11:28
ed007

Цитата:
День добрый,вопрос начинающего:
может ли nncron эмулировать клаву для неактивного окна? Если по русски,то когда я работаю в ИЕ , мне надо эмулировать нажатия пары клавиш, напр. во свернутый Firefoks,во флеш? (Что бы его окно оставлось неактивным)

Действия в неактивном окне приложения
потихоньку начинаем осваивать
Автор: ALNuser
Дата сообщения: 13.04.2011 12:02
Как в nnCron отловить появление окна "Открыть файл" в Firefox или Thunderbird?
Попробовал FOR-CHILD-WINDOWS: ничего не получается. Или это какое-то специальное диалоговое окно?
Автор: AlikasS
Дата сообщения: 15.04.2011 06:29
ALNuser

Цитата:
Как в nnCron отловить появление окна "Открыть файл" в Firefox или Thunderbird?
Попробовал FOR-CHILD-WINDOWS: ничего не получается. Или это какое-то специальное диалоговое окно?

запусти WinSpy, из комплекта nnCron, посмотри им, что за окно.
ну и как делал, неплохо бы увидеть.
а так же что за крон, как запущен,
на какой системе.
P.S. Firefox или Thunderbird в наличии нет
Автор: jason32
Дата сообщения: 15.04.2011 09:27
Какой то бред с запуском приложений. Поставил запускаться utorrent с установлением Интернет-соединения - в первый раз запустил так, будто только что установилась программа - пустой. Ладно, думаю, баг, перенастроил. Теперь же вообще шизофрения - запускаешь через nncron - выскакивает utorrent с одним набором торрентов и с одними настройками, запукаешь через Главное меню этот же файл - другой набор. К тому же и спрашивает - сделать ЭТОТ торрент по умолчанию.
Аналогично было( в плане пустой программы при первом запуске) и с DUMeter. Что за издевательство, чё происходит?
Автор: idlenlazy
Дата сообщения: 15.04.2011 10:30
jason32
Галочку "Как пользователь, выполнивший logon" в настройках задачи поставь.
Автор: AlikasS
Дата сообщения: 15.04.2011 15:14
jason32
посмотри LoadProfile
Автор: jason32
Дата сообщения: 23.04.2011 15:04
idlenlazy
Ага, возможно. Спасибо.
Автор: lucky_Luk
Дата сообщения: 24.04.2011 11:06
При выполнении задачи появляется сообщение от сабжа: "Внутренняя ошибка. Попытка освободить не принадлежащий процессу объект синхронизации". Задача отрабатывает успешно, но интересно что это за ошибка.
Автор: lucky_Luk
Дата сообщения: 26.04.2011 22:21
Объясните разницу между
PURGE-OLD: "c:\windows\temp\*" -1
PURGE-OLD: "c:\windows\temp\*" 0
PURGE-OLD: "c:\windows\temp\*" 1

Последняя запись, PURGE-OLD: "c:\windows\temp\*" 1
почему-то не удалила файлы, которые старше чем 1 день, но не старше чем два дня (задача на удаление запускалась примерно через 1,5 суток после создания этих файлов).
Автор: AlikasS
Дата сообщения: 29.04.2011 17:19
lucky_Luk

Цитата:
При выполнении задачи появляется сообщение от сабжа: "Внутренняя ошибка. Попытка освободить не принадлежащий процессу объект синхронизации". Задача отрабатывает успешно, но интересно что это за ошибка.

интересно на задачу взглянуть
Цитата:
Последняя запись, PURGE-OLD: "c:\windows\temp\*" 1
почему-то не удалила файлы, которые старше чем 1 день, но не старше чем два дня (задача на удаление запускалась примерно через 1,5 суток после создания этих файлов).

файлы были заняты?
Автор: lucky_Luk
Дата сообщения: 29.04.2011 17:35
AlikasS

Цитата:
интересно на задачу взглянуть

Нашел ошибку. В задаче оказалась одна лишняя запись на "отпускание семафора", ну типа SEMAFOR RELEASE. Таких записей оказалось на одну больше чем записей с GET.
nnCron ошибку не выявлял, ошибка вылазила только при выполнении задачи и эта ошибка - ошибка Windows, как раз на тему "семафоров". Не знал что винда может сигнализировать об ошибках в работе задач nnCron, наверное GET...RELEASE задействует не внутренние возможности сабжа, а обращается к возможностям Windows.


Цитата:
файлы были заняты?

Нет, не были. c:\windows\temp\ это просто пример, файлы были в другом месте и ничто их не заблокировало.
А перевод даты вперед на одни сутки в Windows сразу решил проблему, задача сработала и удалила файлы.
Автор: scup
Дата сообщения: 02.05.2011 22:59
Помогите написать задачу. Есть окно

а вот, что выдаёт на него утилита winspy

Это дочернее окно, хендл всегда меняется. Как автоматом при появлении окна нажимать "Да"?
Winspy получатся не видит кнопки.
Автор: KChernov
Дата сообщения: 03.05.2011 08:51
scup
Если кнопка всегда в одном и том же месте, рассчитать относительные координаты и щёлкать по ним.
Автор: Victor_VG
Дата сообщения: 03.05.2011 10:02
Из последних забав - McAfee с последними базами стал объявлять nncron.exe 1.93.1141 вирусом и рваться его лечить. Придётся им написать "Письмо запорожцев турецкому султану" с просьбой устранить ошибку.
Автор: scup
Дата сообщения: 04.05.2011 11:27
"Если кнопка всегда в одном и том же месте, рассчитать относительные координаты и щёлкать по ним."
KChernov нужно не просто щёлкать по кнопарю "Да", а посылать ему (хз как называется) нажатие, чтобы фокус мышки никогда не пропадал.
Автор: HelioSS
Дата сообщения: 06.05.2011 18:07
Если напоминание nnCron вылетит в профиле, отличном от того. в котором он установлен, то текст напоминания становится кракозябрами и уже не возвращается в читаемый вид. Как это можно исправить?
Автор: lucky_Luk
Дата сообщения: 08.05.2011 11:27
Есть две задачи, запускающиеся по START-TIME, одна c OnceAMounth, вторая с OnceADay.
Что сделать чтобы задача с OnceADay не запускалась одновременно один день с задачей, которая OnceAMounth?

Добавлено:
Семафоры не помогают, а файлы-флаги создаваться тоже не успевают, задачи получают команду на старт одновременно.
Автор: AlikasS
Дата сообщения: 08.05.2011 16:10
lucky_Luk

Цитата:
Есть две задачи, запускающиеся по START-TIME, одна c OnceAMounth, вторая с OnceADay.
Что сделать чтобы задача с OnceADay не запускалась одновременно один день с задачей, которая OnceAMounth?

Добавлено:
Семафоры не помогают, а файлы-флаги создаваться тоже не успевают, задачи получают команду на старт одновременно.

как то так
Код: #( при_OnceAMounth
0 VALUE SEMAFOR_FOR_AUTOSTART
Time: START-TIME
OnceAMounth
Action:
SEMAFOR_FOR_AUTOSTART IF EXIT THEN
-1 TO SEMAFOR_FOR_AUTOSTART
\ основная работа
0 TO SEMAFOR_FOR_AUTOSTART
)#

#( при_OnceADay
Time: START-TIME
OnceADay
Action:
1000 PAUSE
SEMAFOR_FOR_AUTOSTART IF EXIT THEN
-1 TO SEMAFOR_FOR_AUTOSTART
\ основная работа
0 TO SEMAFOR_FOR_AUTOSTART
)#
Автор: LEX1
Дата сообщения: 09.05.2011 17:29
Подскажите, это можно сделать прямее?

Цитата:
#( синхронизация_времени
Time: */7 * * * * *
OnceADay
0 VALUE diff
Action:
    4000 RANDOM 1000 + PAUSE
FT-CUR
TP-SYNC: utcnist.colorado.edu
FT-CUR FT- FT>SEC D>S TO diff
TP-SYNC-RESULT 0<>
IF
CLEAR-ONCE
THINT: "Can't synchronize time" 3
ELSE
GET-CUR-TIME
THINT: "Time is synchronized%crlf% %hh%:%mm%:%ss% (%diff% sec)" 5
THEN
)#

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

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


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