因此,我有一个设计不佳的应用程序(令人惊讶!)需要支持。它会打开一个“浏览文件夹”对话框,这很好,只是用户需要选择另一台服务器上的共享。我想我只需在那里为他们映射一个驱动器,但他们需要访问服务器上 60 个共享中的任何一个。
我需要一种方法将 \server\ 映射到一个文件夹,以便他们可以看到所有可用的共享,但 Windows 只允许您映射 \server\share,这违背了目的。
我只需要让我的用户能够从“浏览文件夹”对话框中看到服务器上所有可用的共享。
关于如何实现这一点,您有什么想法吗?
答案1
您需要映射到 IPC$(进程间通信)共享。只需从命令提示符或脚本运行以下命令即可。
net use \\<server> /user:<domain\username> *
这将为该用户、该服务器创建一个缓存的安全令牌,以便任何访问的共享都将默认使用此缓存令牌并且不会提示用户。
令牌会一直缓存到您注销为止,因此这在登录脚本中效果很好。星号 (*) 指示 net 命令提示用户输入密码,或者您可以将星号替换为用户的密码以进行脚本编写。此外,请勿在服务器名称后面添加尾部斜杠 ( \\server ...or \\server\IPC$ ...not \\server\
),因为它指向共享,而不是 IPC。
答案2
您可以共享根卷(尽管这可能不建议,除非该卷仅包含共享文件夹。如果它是操作系统卷,那么绝对不建议这样做)。在 Windows 中,每个固定磁盘卷都出于管理目的而共享并隐藏(使用共享名称中的 $ 符号)。您可以通过分配您选择的共享名称再次共享每个卷。
因此,您可以共享根卷,然后将驱动器号映射到该共享。当用户连接到映射驱动器时,他们将看到该卷上的所有文件夹。
例如:
服务器 =fileserver
卷共享名称 =Root
映射驱动器 = Q =\\fileserver\root
浏览 Q = 根卷上的每个文件夹fileserver
答案3
您可以创建指向共享的符号链接,然后让他们访问该符号链接。创建一个批处理文件,您可以在设置它的用户计算机上运行它。
mkdir c:\servershares
cd c:\servershares
mklink /D share1 \\server\share1
mklink /D share2 \\server\share2
mklink /D share3 \\server\share3
答案4
您还可以创建包含该服务器上所有共享的 DFS 共享。