Програми від nnSoft (nnCron, nnCron LITE, nnBackup) проблеми та рішення
#( PasteDate WatchWindow: "*- Блокнот"
\ див. "Невідкладна допомога по Форту" CREATE strDate 12 ALLOT Action: PAUSE: 250 strDate S" %Year@ Mon@ Day@ -2 DAY+ YMD>DATE DATE> ;S%" EVAL-SUBST S" -"S" ." StringReplace2 SEND-KEYS: "%strDate COUNT%" )#
ЕТА ЗАДАЧА ВИДАЛЯЄ КОЖНИЙ РАЗ ПРИ ЗАВАНТАЖЕННІ ВСІ ТИМЧАСОВІ ФАЙЛИ А ТАКОЖ ЩОДЕННО ОЧИЩУЄ ТАПКУ 1 НА ДИСКУ С: І ВИДАЛЯЄ ФАЙЛИ СТАРШЕ 3 ДНІВ З ПАПКИ 3
#( CLASSIC-TASK-#-ochistka- Time: START-TIME Action: RECURSIVE PURGE-OLD: "c:\1\*" -1 RECURSIVE PURGE-OLD: " c:\3\*" 3 RECURSIVE DIR-DELETE: "c:\Found.000" RECURSIVE DIR-DELETE: "c:\Found.001" RECURSIVE DIR-DELETE: "c :\Found.002" RECURSIVE FILE-DELETE: "c:\
*.*" RECURSIVE FILE-DELETE: "c:\WINDOWS\Temp\*" RECURSIVE FILE-DELETE: "c:\system.1st" RECURSIVE FILE-DELETE: "c:\ suhdlog.dat" RECURSIVE FILE-DELETE: "c:\scandisk.log" RECURSIVE FILE-DELETE: "c:\twain. mtx" RECURSIVE FILE-DELETE: "c:\modemdet.txt" RECURSIVE FILE-DELETE: "c:\iebak.dat" RECURSIVE FILE-DELETE: "c:\file_id.diz" RECURSIVE FILE-DELETE: "c:\ffastun.*" RECURSIVE FILE-DELETE: "c:\chklist.*" RECURSIVE FILE-DELETE: "c:\anti-vir.dat" RECURSIVE FILE-DELETE: "c:\0*.nch" RECURSIVE FILE-DELETE: "c:\*log.txt" RECURSIVE FILE-DELETE: "c:\*.
*" RECURSIVE FILE-DELETE: "c:\*.___" RECURSIVE FILE-DELETE: "*._detmp" RECURSIVE FILE-DELETE: "c:\*._dd" RECURSIVE FILE-DELETE: "c:\*.^" RECURSIVE FILE-DELETE: "c:\*.wbk" RECURSIVE FILE-DELETE: "c:\*.tmp" RECURSIVE FILE -DELETE: "c:\*.temp" RECURSIVE FILE-DELETE: "c:\*.syd" RECURSIVE FILE-DELETE: "c:\*.spc" RECURSIVE FILE-DELETE : "c:\*.sik" RECURSIVE FILE-DELETE:"c:\*.sdi" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.prv" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.old" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c :\*.nu3" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.nav" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.MS" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\ *.gid" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.fts" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.fnd" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*. fic" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.err" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.dmp" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.db$ " РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.cpy" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.chk" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.bk?" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.bak" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.?
?" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.
" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.?$?" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.---"
РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.$db" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*.$$$" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\pspbrwse.jbf" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\*__ofidx*.*" РЕКУРСИВНЕ ВИДАЛЕННЯ ФАЙЛУ: "c:\mscreate.dir" )# :beer:
Був подобный глюк, вилечился простой перестановкою (як ні странно. ) :idontnow:
как нашет AutoIT?
Підтримую твій питання. Дуже б було цікаво.
У nnCron при спробі запустити вихідний скрипт
RunOnce NoDel Час: 41 17 10 8 * 2005 Дія: OSD-FONT: "Arial" 50 0x0000FF00 OSD-POS: 400 200 OSD: "Привіт! Зараз %hh%:%mm%!" 2000 S" Привіт! Зараз %hh%:%mm%!" EVAL-SUBST OSD 2000 ПАУЗА OSD-CLEAR
надпис з'являється, але потім вилітає - OSD: Ошибка стека в Action
Можна, звичайно, заблокувати висновок повідомлень про помилки. :(
4eburashka: Монітор відключає, але через пару секунд включається навпаки. Я не розумію, що надо додати. Подскажите пожайлуста. Всем спасибі.
Я підозреваю, що включається навпаки із-за відпускання кнопок.Спробуй вставити скрипт "PAUSE: 2000".
Якщо завдання (натискання тих клавіш) не вимагає негайного (з точністю до секунди) виконання, можна додати паузу в скрипт, для впевненості секунди дві. Щоб можна було встигнути відпустити хоткей.
Це як варіант обхідного вирішення проблеми.
Як зробити (у Win XP), щоб завдання, створювані в nnCron у певному профілі тільки під цим профілем і виконувались не відображаючись в інших профілях? не зовсім зрозумів що мав на увазі під "відображаючись в інших профілях", але якщо треба що б завдання виконувались тільки під конкретним профілем, то використовуй у шапці завдання перевірку на поточного користувача: %USERNAME% - ім'я поточного користувача
Jinx якщо можеш опиши детальніше чого хочеш досягти, ідеальний варіант: приведи непрацюючу задачу, або працюючу - якщо намагаєшся її поліпшити
Crime 1. У завданні має лише один раз використовувати слово Action:. Забери те, що перше. 2. Якщо потрібно відстежувати моменти закриття програми, то слово WatchProc: зайве, тому що воно відстежує моменти запуску програми. Саме тому в тебе програма починає запускатися нескінченну кількість разів (як у циклі), тому що стартує відповідна кількість задач запускаючись від результату виконання попередньої копії цього завдання. Забери рядок із цим словом. 3. Не бачу причин використовувати слово START-APPW: замість слова START-APP:, imho - заміни.
є ось такий скрипт
#( test_runit Action: WatchProc: "Runit.exe" WatchProcStop: "Runit.exe" Action: START-APPW: D:\RunIt\Runit.exe )#
тобто якщо я раптом випадково закриваю цю прогу по альт +Ф4 то вона її запускає знову, але проблемка в тому що цей скрипт починає запускати її ху.хмару разів. в чому справа ?
#( test_runit WatchProcStop: "Runit.exe" Action: START-APPW: D:\RunIt\Runit.exe )#
або, тому що іноді не відстежується зупинка процесу, якщо прога кривими руками писана
#( test_runit RULE: PROC-EXIST: "Runit.exe" NO Action: START-APPW: D:\RunIt\Runit.exe )#
у цьому випадку прога запуститися десь за хвилину після зупинки процесу
Як зробити (у Win XP), щоб завдання, створювані в nnCron у певному профілі тільки під цим профілем і виконувались не відображаючись в інших профілях?
використовувати треба конструкцію типу
#( test_user_run Action: USERNAME S" ім'я_користувача" COMPARE 0= IF виконувана задача THEN )#
DJ makrus: І щось я не зовсім зрозумів, що означає фраза: Цитата: . помилка, що процес перерваний, т.к.
Пардон, DJ makrus, це друкарська помилка. "Процес перервано" в оригіналі. За рештою – зараз постараюся зробити, як ви сказали.
Windows XP (5.1.2600) Service Pack 1
titt Пардон, DJ makrus, це друкарська помилка. "Процес перервано" в оригіналі. За рештою – зараз постараюся зробити, як ви сказали. 1. O'k, з усіма буває. 2. Звертайся на "ти", O'k? 3. Скрипт сам складав? Потрібно знати тільки для того, щоб вирішити наскільки докладно описувати що і як робити 4. Викладаю доопрацьований твій скрипт. 4.1 Старий скрипт не замінюй, а тимчасово деактивуй його, для чого зніми галку поруч з "Активною" 4.2 Створи нову здачу і встав той скрипт що я надіслав. 4.3 Якщо є можливість, то запусти це завдання (скрипт) і досягши появи цієї помилки, якщо немає те чекай як вилізе 4.4 Скрипт всю додаткову інформацію пише у файл %DD%cron.log де замість "%DD% буде поточний день місяця,файл розташовуватиметься в підпапці "Log" папки де встановлений nnCron, і кожен день буде створюватися новий файл. По можливості не видаляй логи нормальної відпрацювання скрипта, потім скопом усі файли сюди виклади. 5. У файлі nncron.out, що ти надіслав, зафіксовано дві помилки, хоча, можливо, викликаються вони через одну причину. Коли проблемне завдання нормально відпрацьовує, у цьому файлі вміст відповідає тому, що ти надіслав або там тільки перші чотири рядки? Іншими словами треба бути точно впевненим, що ці помилки фіксуються в цьому файлі саме при виконанні цього завдання, а не якийсь інший 6. Надісланий лог помилки.log дуже вже скупий ;) , добре б ще 10 рядків над і десять рядків під рядком з помилкою (про всяк випадок) 7. Все що в надісланому коді після рядка "PAUSE: 50000", краще, IMHO, замінити на QUERY: "Очищення дисків E F G завершено. Рекомендую зробити перезавантаження.%crlf%%crlf% Перезавантажити комп'ютер?" IF PROC-CLOSE: ObjectDock.exe HINT-POS: 400 280 HINT-SIZE: 500 500 THINT: "починаємо ПЕРЕЗАВАНТАЖЕННЯ комп'ютера" 30 FORCE-REBOOT THEN
8. Не обов'язково, але краще оновитись до останнього релізу 9. Скрипт у себе цілком не перевіряв, але працювати повинен;), скарги приймаються
DJ makrus DJ makrus: 3. Скрипт сам складав? Потрібно знати тільки для того щоб вирішити наскільки докладно описувати що і як робити
Половина-наполовину. Був у мене скрипт, але він не відповідав моїм хотівкам. Тому я сама його доповнила
Що стосується решти пунктів - сьогодні я тестуватиму і результати обов'язково скажу.
DJ makrus: 5. У файлі nncron.out, що ти надіслав, зафіксовано дві помилки, хоча, можливо, викликаються вони через одну причину. Коли проблемне завдання нормальновідпрацьовує, у цьому файлі вміст відповідає тому що ти надіслав або там тільки перші чотири рядки? Іншими словами треба бути точно впевненим, що ці помилки фіксуються в цьому файлі саме при виконанні цього завдання, а не якийсь інший
Проблема вирішена. Викладаю звіт для тих, хто має схожий трабл:
Опис проблеми: при пошуку та видаленні файлів по масках (див. err_nnCron.zip пост №18) nnCron зупиняв роботу і писав у лозі: "Внутрішня помилка. Ім'я файлу або його розширення має надто довжину"
Рішення: після вивчення докладного лога, що створюється, з'ясувалося, що на одному з дисків є папка з надзвичайно довгою назвою. Теку перейменовано, проблема зникла.
Рішення знайдено завдяки доповненню до скрипту, який люб'язно написав і надіслав DJ makrus див. Debug.zip (пост №20)
створив завдання щоб при з'єднанні з інетом запускався торрент клієнт (utorrent), так ніби все нормально але він запускається, але без налаштувань і немає завантажень у списку, пробував на іншому клієнті (bitcomet) той стартує, але видає повідомлення типу щось там про обране і поки не натиснеш Ок програма не стартане закачування, так ось питання: як вирішити ці проблеми, адже звичайним способом все запускається нормально, а через планувальник кривувато. у кого які міркування?