Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Хостинг Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг на Windows 2008

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 1211
от 20.10.2008, 21:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 394, Экспертов: 43
В номере:Вопросов: 2, Ответов: 5

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 147298: Здравствуйте ув. Экспреты. Как сделать так, что бы происходила проверка папки через интервал времени и если появлялся новый файл выдавать сообщение? Заранее спасибо...
Вопрос № 147336: Здраствуйте уважаемые эксперты. Как сделать в делфи отправку каких либо данных на какой либо ip адрес и порт??? Хочу в этом разобраться и написать небольшую программку флудилку....

Вопрос № 147.298
Здравствуйте ув. Экспреты. Как сделать так, что бы происходила проверка папки через интервал времени и если появлялся новый файл выдавать сообщение? Заранее спасибо
Отправлен: 15.10.2008, 16:12
Вопрос задал: Пустовойтенко Виктор Григорьев (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Шичко Игорь
Здравствуйте, Пустовойтенко Виктор Григорьев!
Предложу Вам следующий алгоритм решения задачи:
1. Создать на форме два компоненита, например Memo1 и Memo2.
При этом Memo2 будет использоваться для хранения эталонного набора, Memo1 - для хранения новых файлов
2. Добавить компонент TTimer, установить ему нужный период срабатывания.
3. По событию FormActivate загружать в Memo2 список файлов.
4. По событию OnTimer загружать в Memo1 новый список файлов.
Поочередно перебрав строки Memo1 и сравнив каждую из них со списком Memo2 удалить те, которые сравнились.
Останутся только новые.
Процедура загрузки имен файлов в Memo - в приложении.
Пример использования:
FindFiles(dir_, '*.xls', Memo1.Lines, true);
Для наглядности можно Memo2 сделать невидимым.

Приложение:

Ответ отправил: Шичко Игорь (статус: 10-ый класс)
Ответ отправлен: 15.10.2008, 16:42

Отвечает: Bochvarov NikB
Здравствуйте, Пустовойтенко Виктор Григорьев!
Посмотрите ето:
function ReadDirectoryChanges; external kernel32 name 'ReadDirectoryChangesW';
Ответ отправил: Bochvarov NikB (статус: 10-ый класс)
Ответ отправлен: 15.10.2008, 16:42

Отвечает: Genia007
Здравствуйте, Пустовойтенко Виктор Григорьев!
Накидал такую вот процедуру, работает по таймеру, считает количество файлов.


Приложение:

Ответ отправил: Genia007 (статус: 9-ый класс)
Ответ отправлен: 15.10.2008, 17:34
Оценка за ответ: 4
Комментарий оценки:
Но так я не узнаю, какой именно файл появился

Отвечает: PavelGM
Здравствуйте, Пустовойтенко Виктор Григорьев!

Еще вариант без таймеров (как советует Микрософт - MSDN) - система сама уведомит об изменениях:
1. FindFirstChangeNotification c FILE_NOTIFY_CHANGE_FILE_NAME
2. потом в цикле WaitForSingleObject по полученному хэндлу
3. считываете список файлов и поиск нового - сообщение
4. и FindNextChangeNotification для продолжения отслеживания.
5. ну и при выходе FindCloseChangeNotification для снятия отслеживания

Если у вас не только эта задача, то лучше это делать в отдельном потоке, а родительскому посылать уведомления (сообщением) о найденных изменениях.

P.S. также можно отслеживать появление папок, появление файлов в подпапках и т.п. см. справку по FindFirstChangeNotification
Ответ отправил: PavelGM (статус: Студент)
Ответ отправлен: 16.10.2008, 00:12
Оценка за ответ: 4
Комментарий оценки:
Канешна умно написано, но я ничего не понял. Что значит, потом в цикле WaitForSingleObject по полученному хэндлу? First, Next, Close я еще представляю как работает, так как работал с базами данных или это не так? Если бы можно было поподробнее, а ещё лучше маленький примерчик


Вопрос № 147.336
Здраствуйте уважаемые эксперты. Как сделать в делфи отправку каких либо данных на какой либо ip адрес и порт??? Хочу в этом разобраться и написать небольшую программку флудилку.
Отправлен: 15.10.2008, 19:39
Вопрос задал: Журавлёв Юрий (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Овчинников Николай Владиславов
Здравствуйте, Журавлёв Юрий!
Посмотрите здесь может и поможет www.elacerta.narod.ru
Сразу на главной странице одна ссылка на файл там программа и описание
Ответ отправил: Овчинников Николай Владиславов (статус: 1-ый класс)
Ответ отправлен: 15.10.2008, 23:25


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 5.6 от 14.10.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru
RusIRC.ru | Kalashnikoff.ru | RadioLeader.ru

В избранное