I need to find a way to determine what files on a shared folder are being accessed, and by whom. Commands like "Net Files" and "Net Session" can give this information, as well as PSFile.exe in SysInternals, but I cannot figure out how to do this programmatically. I have found a way to determine who is accessing a share via WMI, but it does not show what file is being accessed. Does anyone know how to do this in C / C++ / C#? Any and all help will be greatly appreciated.
相关问题
- Sorting 3 numbers without branching [closed]
- Sorting 3 numbers without branching [closed]
- Multiple sockets for clients to connect to
- Graphics.DrawImage() - Throws out of memory except
- Why am I getting UnauthorizedAccessException on th
NetFileEnum level 3 seems to be what you're looking for.
You can use ADSI (Active Directory Service Interfaces) , some time ago I wrote an article about this topic
Using Delphi and ADSI to enumerate local and remote shared resources
the samples are written in delphi but you can use this article as a guide to ADSI.To List the opened resources like folders and files you must use the IADsFileServiceOperations interface and the Resources function which return a collection of the open resources for the service.