Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 08.10.2008, 21:48   #1
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию Монитор каталога

Знаю сейчас умники меня пихнут в поиск Но я уже разгреб материал. Проблема собтсвенно в чем есть список каталогов каждый инициализируется как
Код:
CreateFile(PCHAR(FileName), GENERIC_READ,
    FILE_SHARE_READ or FILE_SHARE_DELETE or FILE_SHARE_WRITE,
    NIL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0);
пото в обработке потока Execute пишу
Код:
var
  i: Integer;
  Buf: array[0..4095] of Byte;
  p: PFinderChangeItem; // мой тип хранить Filename: string, h: DWORd; ну имя и хендл открытой папки
  Ret: DWORD;
begin
  while not Terminated do        
  begin
    if not FPause then
    begin
      i := 0;
      while not Terminated and (i < FItems.Count) do
      begin
        p := FItems[i];

        FillChar(Buf, SizeOf(Buf), 0);
        if ReadDirectoryChangesW(p^.h, @Buf, SizeOf(Buf), False,
          FILE_NOTIFY_CHANGE_FILE_NAME or FILE_NOTIFY_CHANGE_DIR_NAME or
          FILE_NOTIFY_CHANGE_ATTRIBUTES or FILE_NOTIFY_CHANGE_SIZE or
          FILE_NOTIFY_CHANGE_LAST_WRITE or FILE_NOTIFY_CHANGE_LAST_ACCESS or
          FILE_NOTIFY_CHANGE_CREATION or FILE_NOTIFY_CHANGE_SECURITY, @Ret, NIL, NIL) then
        begin                   
          FCurrent := i;
          MessageBoxA(0,pchar(p^.FileName),'',0); // вызывается только один раз.. почему понять не могу ????
         //Synchronize(DoUpdate);
        end;

        inc(i);
      end;
    end;
    Sleep(100);
  end;
end;
p.s. ну хоть с этим помогите

Проблема решена... сделал прослушивание папки для каждой отедльную нить

Последний раз редактировалось BOBAH13; 09.10.2008 в 00:16.
BOBAH13 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Системный блок + монитор от ноутбука ERASERROR Компьютерное железо 5 09.08.2009 16:41
Как отключить монитор??? Манжосов Денис :) Помощь студентам 5 14.07.2008 17:11
МОНИТОР - положение картинки меняется Altera Компьютерное железо 10 04.04.2008 15:28
snmp монитор сетевого оборудования testir Помощь студентам 2 05.08.2007 17:47
Второй монитор из Delphi Sion Win Api 1 22.11.2006 20:08