В чём трабла с FindFirstChangeNotification

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Taras2
Обычный пользователь
Обычный пользователь
 
Сообщения: 82
Зарегистрирован: 20.06.2003 (Пт) 12:13

В чём трабла с FindFirstChangeNotification

Сообщение Taras2 » 08.09.2003 (Пн) 15:07

Пишу:
...
Private Const FILE_NOTIFY_CHANGE_SIZE = &H8
...
Private Const FILE_NOTIFY_CHANGE_ALL = &H4 Or &H2 Or &H1 Or &H8 Or &H10 Or &H100
...
Private Declare Function FindFirstChangeNotification Lib "kernel32" Alias "FindFirstChangeNotificationA" (ByVal lpPathName As String, ByVal bWatchSubtree As Long, ByVal dwNotifyFilter As Long) As Long
...

В теле подпрограммы:

...
hChange = FindFirstChangeNotification("C:\", &HFFFFFFFF, FILE_NOTIFY_CHANGE_SIZE)
Debug.Print "hChange=" & hChange

Получаю -1
В качестве bWatchSubtree пробовал True и False, одинаково.
В качестве dwNotifyFilter , ставил FILE_NOTIFY_CHANGE_ALL , не помогает.

Сейчас попробовал поставить Private Declare Function FindFirstChangeNotification Lib "kernel32" Alias "FindFirstChangeNotificationW" (ByVal lpPathName As String, ByVal bWatchSubtree As Long, ByVal dwNotifyFilter As Long) As Long
Выдаёт 0.

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 08.09.2003 (Пн) 19:54

Слышал звон :wink:

hChange = FindFirstChangeNotification("C:\", &HFFFFFFFF, FILE_NOTIFY_CHANGE_SIZE)
Debug.Print "hChange=" & hChange

Здесь ты только хендл объекта получил....
Его ж нужно отледить......

слудующей строкой ставишь
result=WaitForSingleObject(hChange,WaitMilliseconds)'могу с параметрами напутать...
WaitMilliseconds-скока ждать
result- вот это уже проверять надо
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Taras2
Обычный пользователь
Обычный пользователь
 
Сообщения: 82
Зарегистрирован: 20.06.2003 (Пт) 12:13

Сообщение Taras2 » 09.09.2003 (Вт) 9:09

Sebas писал(а):Слышал звон :wink:

hChange = FindFirstChangeNotification("C:", &HFFFFFFFF, FILE_NOTIFY_CHANGE_SIZE)
Debug.Print "hChange=" & hChange

Здесь ты только хендл объекта получил....
Его ж нужно отледить......


В том то и дело, что я хендл не получил! Поскольку -1 это: INVALID_HANDLE_VALUE.
Кстати GetLastError выдаёт 0, что означает операция выполнена успешно.

Taras2
Обычный пользователь
Обычный пользователь
 
Сообщения: 82
Зарегистрирован: 20.06.2003 (Пт) 12:13

Сообщение Taras2 » 09.09.2003 (Вт) 14:10

А функция eof() отреагирует, если в файл запишет другая прога? У меня не реагирует.

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 09.09.2003 (Вт) 17:13

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

sebas<-@->mail.ru


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот и гости: 12

    TopList