Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Вниз

Нужен пример создания планировщика задач   Найти похожие ветки 

 
Призрак   (2002-09-07 23:14) [0]

пребуется сделать планировщик задач, т.е. чтобы в определенный день, в определенное время он выполнил указанное действие.
левые компаненты мне нужно. хочу все сделать на стандартных, максимум, использование RX, в Soho кажется ничего для этого нет.


 
Юрий Зотов   (2002-09-07 23:16) [1]

А чем не устраивает родной, из самой Windows?


 
Призрак   (2002-09-07 23:25) [2]

(1) мне нужно в моей программе запускатьархивирование баз ... их может быть очень много, причем нужно делать все гибко и быстро в режиме редактирования карточки базы. т.е. все в одном флаконе.


 
Юрий Зотов   (2002-09-07 23:34) [3]

А разве стандартный Sheduler с такой задачей справиться не может?

Я бы сделал программу самого архивирования (если ее еще нет) и распланировал ее запуск стандартным Sheduler"ом. По определенным дням, в определенное время - как Вы и написали. Вот и все.


 
Призрак   (2002-09-07 23:37) [4]

в таком случае можно привести пример создания задания ...
я давно не программировал, 2 года.
сразу код написать не смогу :-(


 
Юрий Зотов   (2002-09-07 23:45) [5]

А ничего программировать и не нужно.

Главное меню -> Программы -> Стандартные -> Служебные ->
Назначенные задания -> Мастер настройки (или Добавить задание)


 
Призрак   (2002-09-07 23:54) [6]

хе-хе, мне нужно это сделать из моей программы, чтобы бухам было понятно и они могли без меня все делать.


 
Anatoly Podgoretsky   (2002-09-07 23:59) [7]

Они и будут без тебя это делать, там все понятно, ну если очень хочешь, то к микрософту за АПИ


 
Юрий Зотов   (2002-09-08 00:05) [8]

А что, бухи совсем уж тупые? Вряд ли. Там все настолько понятно, что и ребенок сообразит.

В конце концов, можно написать инструкцию:
1. Ткнуть мышкой туда-то.
2. Ткнуть мышкой сюда-то.
3. Нажать ОК и все будет тип-топ.
4. Если с головой полная беда - нажмите кнопку F1.
5. Если и это не помогло - подайте заявку системному администратору. Письменную. Чтобы он мог ее начальству показать. И задать вопрос - можно ли ТАКОМУ человеку доверять бухгалтерию?


 
Призрак   (2002-09-08 00:40) [9]

Юрий, я понимаю что можно сделать так, но всетаки выбрал путь все в моей проге, щас при помощи RxClock и свойсва Alarm добился нужного результата. но это не есть гуд, как мне кажется.


 
Юрий Зотов   (2002-09-08 01:56) [10]

Почему не гуд? Правда, не знаю точно, что делает RxClock, но RxLib - отличная, очень грамотно написанная библиотека, почему бы ей не доверять?

Впрочем, можно и без всяких Rx, и даже вообще без VCL. Пишется невидимая программа (только DPR, без юнитов, можно оформить в виде сервиса). В ней бесконечный цикл с WaitFor_Что_Угодно(..., ВРЕМЯ) - то есть, цикл исполняется раз в какое-то время (скажем, в 10 секунд). Это чтобы не гробить CPU (а можно и с приоритетом IDLE_PRIORITY_CLASS). В том же цикле проверяется текущая дата (день недели, день месяца - что угодно) и время. Если они совпали с заданными значениями (которые можно хранить, например, в файле), или превысили эти значения, то запускается нужная программа (которую можно прописать в том же файле), а заданные значения в этом файле перезаписываются на новые (исходя из заданной же периодичности запуска, которую тоже можно хранить в том же файле).

Вот и все. Такая программа будет иметь размер примерно в 16-20 Кб. Остается только записать ее (и прописать в автозапуск - в главное меню или в реестр) на КАЖДОЙ юзерской машине.

Но вот для этого Вам придется побегать РОВНО столько же, сколько и для того, чтобы на каждой юзерской машине самому настроить стандартный планировщик. Зато потрудиться придется существенно побольше. И в случае каких-то сбоев отвечать будет автор программы, а не Билл Гейтс (написавший кривой планировщик) и не юзер (не сумевший, или поленившийся, или забывший выполнить простейшую операцию по настройке стандартного планировщика по готовой инструкции).

Так что - выбор за Вами.


 
Призрак   (2002-09-08 02:06) [11]

буду делать через Alarm как никак будильник :-)
описалово:
.
RxClock
Description
Компонента позволяет отображать время суток в цифровом или аналоговом виде (вид отображения задается с помощью свойства ShowMode).
При цифровом отображении формат времени задается комбинацией значений свойств LeadingZero, TwelveHour и ShowSeconds.
Дополнительно имеется функция будильника. При установке значения AlarmEnabled в True, при наступлении времени суток, заданного свойствами AlarmHour, AlarmMinute и AlarmSecond, происходит событие OnAlarm, в обработчике которого вы можете произвести необходимые действия.
.
хотя можно определять все как ты сказал выше. причем делается элементрано, это я еще помню %)


 
Юрий Зотов   (2002-09-08 02:17) [12]

Можно и так. А можно и стандартный TTimer (в OnTimer проверять время суток). В обоих случаях размер программы - примерно 300 К.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.006 c
14-61291
Tornado
2002-08-22 13:49
2002.09.19
Продолжение кина


1-61198
Sniffer
2002-09-08 18:11
2002.09.19
-2.57313000000000E-0001-9


14-61280
Ev_genus
2002-08-21 19:26
2002.09.19
6th Day Soundtrack


1-61142
race1
2002-08-30 13:19
2002.09.19
соз(и)дание


1-61121
LexusU
2002-09-10 12:41
2002.09.19
Как работать с zip файлами (по типу WinAMP)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский