在命令提示符下,如果net file
执行,它会显示在任何共享文件夹上打开的资源,并且还会显示正在访问该资源的用户名。
可以从计算机管理 (compmgmt.msc) -> 系统工具 -> 共享文件夹 -> 打开文件中查看相同的信息。
可以使用 VBScript 访问相同的信息:
Set objConnection = GetObject("WinNT://localhost/LanmanServer")
Set colResources = objConnection.Resources
For Each objResource in colResources
Wscript.Echo "Path: " & objResource.Path
Wscript.Echo "User: " & objResource.User
Wscript.Echo
Next
如何通过 C# 访问相同的信息?(不new file
从 C# 运行命令 - 这会截断资源中的长路径名)。
Win32_ServerConnection
是否可以使用 WMI(哪个类?-我相信不会给出打开的资源的路径;与 相同Win32_ServerSession
)或 Netapi32.dll来获取此信息?如果是这样,如何做到这一点?
注意:需要一种方法来获取打开的文件的完整路径,类似于命令提示符和计算机管理中的屏幕截图中的信息。
有任何想法吗?