Информация о форуме
Администратор: root
Модератор(ы): Mikes, Lurid, Kiddy
Всего тем: 20

Вы можете читать форум
Вы не можете отправлять сообщения
Вы не можете открывать новые темы

Форум: Soft & Warez
все о программах, новых и старых
венн : Win API
венн
28.12.06 13:42
каковы причины, по которым функция ReadDirectoryChangesW
может некорректно работать с сетевыми дисками?
MPA3b
28.12.06 15:23
венн: (28.12.06 13:42)
каковы причины, по которым функция ReadDirectoryChangesW
может некорректно работать с сетевыми дисками?
чо курил? ;)

а ещё наверна потому что сетевые диски на самом деле не
диски вовсе.
SeRG
28.12.06 15:27
сетевой диск на Линухе?
root
28.12.06 17:20
сетевой диск должен быть на винде, и не на любой, а из
линейки NT.
венн
29.12.06 00:16
root: (28.12.06 17:20)
сетевой диск должен быть на винде, и не на любой, а из
линейки NT.
угу... сервак, на котором папка замапленного диска
расположена, крутится под вин сервер 2003...

с локальными дисками фукнция работает очень хорошо... а вот
с сетевыми - совсем никак...
root
29.12.06 08:28
венн: (29.12.06 00:16)
угу... сервак, на котором папка замапленного диска
расположена, крутится под вин сервер 2003...

с локальными дисками фукнция работает очень хорошо... а вот
с сетевыми - совсем никак...
http://msdn.microsoft.com/library/default.asp?url=/library/e
n-us/fileio/fs/readdirectorychangesw.asp

ReadDirectoryChangesW fails with ERROR_INVALID_PARAMETER
when the buffer length is greater than 64 KB and the
application is monitoring a directory over the network. This
is due to a packet size limitation with the underlying file
sharing protocols.

Windows NT 4.0: The limit in this situation is 4 KB.

Windows 2000: Clients that attempt multiple simultaneous
long-term requests against a server, for example change
notifications, should be running Service Pack 2 or higher.
See Knowledge Base article Q271148 for more details.
Windows Me: There is similar functionality available with
the FindFirstChangeNotification function.
To compile an application that uses this function, define
the _WIN32_WINNT macro as 0x0400 or later. For more
information, see Using the Windows Headers.

Requirements
Client Requires Windows Vista, Windows XP, Windows 2000
Professional, or Windows NT Workstation 4.0.
Server Requires Windows Server "Longhorn", Windows Server
2003, Windows 2000 Server, or Windows NT Server 4.0.
венн_и_шампанское
29.12.06 18:05
блин.. Димыч.. издеваешься... я в таокм состоянии не то что
английский... русский с трудом понимаю...
венн
30.12.06 18:48
ключевая фраза:
ReadDirectoryChangesW fails with ERROR_INVALID_PARAMETER
when the buffer length is greater than 64 KB and the
application is monitoring a directory over the network.

сделал
bufSize := 64*1024;
вместо
bufSize := 16*1024*1024;

все работает...
огроменное спасибо...:)

ЗЫ самое интересное, что в справке по WinAPI про критичность
размера буфера ничой не сказано...