NetFileEnum
От: MultIFleX  
Дата: 14.07.08 02:43
Оценка:
Всем приятного времени. Функция NetFileEnum дает мне инфу о имени пользователя (fi3_username), получившего доступ к файлу в структуре _FILE_INFO_3, а также уникальный идентификатор открытого ресурса (fi3_id). Мне же необходимо узнать, какому компьютеру принадлежит этот пользователь (тоесть фактически к какой сессии из NetSessionEnum). Я конечно могу перечислить сессии через NetSessionEnum, но ведь фактически имя пользователя не всегда однозначно совпадает с именем компьютера, и в ряде случаев может быть одинаковым (например учетка Administrator). Подскажите пожалуйста как определить соответствие открытого файла и сессии, либо возможно есть какие либо другие апи функции способные мне помочь?? Спасибо.

ЗЫ. В догонку: на открытие файла из шары можно чтонибудь вроде хука поставить, или события подождать, или всетаки придется постоянный опрос производить???

ЗЗЫ. Блин что за люди, ни одна из функций не дает полной информации и не позволяет связать полученную инфу с другой.. Диверсанты блин...
Re: NetFileEnum
От: lexer_lx Украина  
Дата: 14.07.08 12:56
Оценка:
Здравствуйте, MultIFleX, Вы писали:

MIF>Всем приятного времени. Функция NetFileEnum дает мне инфу о имени пользователя (fi3_username), получившего доступ к файлу в структуре _FILE_INFO_3, а также уникальный идентификатор открытого ресурса (fi3_id). Мне же необходимо узнать, какому компьютеру принадлежит этот пользователь (тоесть фактически к какой сессии из NetSessionEnum).

MIF>ЗЫ. В догонку: на открытие файла из шары можно чтонибудь вроде хука поставить, или события подождать, или всетаки придется постоянный опрос производить???

ReadDirectoryChangesW и FindFirstChangeNotification/FindNextChangeNotification.
Re[2]: NetFileEnum
От: MultIFleX  
Дата: 15.07.08 08:01
Оценка:

Здравствуйте, lexer_lx, Вы писали:

_>Здравствуйте, MultIFleX, Вы писали:

MIF>>Всем приятного времени. Функция NetFileEnum дает мне инфу о имени пользователя (fi3_username), получившего доступ к файлу в структуре _FILE_INFO_3, а также уникальный идентификатор открытого ресурса (fi3_id). Мне же необходимо узнать, какому компьютеру принадлежит этот пользователь (тоесть фактически к какой сессии из NetSessionEnum).
MIF>>ЗЫ. В догонку: на открытие файла из шары можно чтонибудь вроде хука поставить, или события подождать, или всетаки придется постоянный опрос производить???

_>ReadDirectoryChangesW и FindFirstChangeNotification/FindNextChangeNotification.


Это все конечно хорошо, но не решает проблему, которая состоит в определении компьютера с которого был открыт файл в моей шаре.
Re[3]: NetFileEnum
От: lexer_lx Украина  
Дата: 15.07.08 09:49
Оценка:
Здравствуйте, MultIFleX, Вы писали:

_>>ReadDirectoryChangesW и FindFirstChangeNotification/FindNextChangeNotification.


MIF>Это все конечно хорошо, но не решает проблему, которая состоит в определении компьютера с которого был открыт файл в моей шаре.


Установка связи Компьютер-Пользователь мне тоже не удалась.
Использование ReadDirectoryChangesW даст точное время доступа, без уточнения компьютера/пользователя.
Единственное, што я еще нашел в МСДН — интерфейс IADsResource:

get_User — Gets the name of the user for the resource.
get_UserPath — Gets the ADsPath of the user object for the user who opened the resource.
get_Path — Gets the file system path of the opened resource.
get_LockCount — Gets the number of locks on the resource.

Это также не дает названия подключенного компьютера.
Если Вам удастся решить данную проблему — пожалуйста, напишите в этой ветке об этом.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.