0

我整个下午都在搜索 SO 和谷歌,试图解决这个问题,

我想要一个 .vbs 脚本,提示我输入计算机名称,例如 PC123,然后连接到计算机的 C 驱动器 (\PC123\c$) 并使用所需的登录凭据打开一个 Windows 资源管理器窗口(这将是每台计算机的格式相同)

IE:

用户名:PC123\PC123_ADMIN

密码:PC123#ADMINpass

这是我目前拥有的:

Set objNetwork = WScript.CreateObject("WScript.Network")
objNetwork.MapNetworkDrive "R:", "\\PC123\C$", False, "PC123\PC123_ADMIN",     "PC123#ADMINpass"

这可以将 R: 连接并映射到我想要的 pc,但必须硬编码到一台特定的计算机,并且不允许我进入我想连接的计算机。

如果可能的话,我想直接打开 C$ 的资源管理器窗口,因为我需要连接到不同数量的计算机。

我怎样才能做到这一点?

4

2 回答 2

0

查找 InputBox 函数。它会提示您输入值。例如

Input = InputBox("Enter your computer name")

要在资源管理器中打开映射的驱动器,请使用运行。例如

Dim oShell
Set oShell = WScript.CreateObject ("WSCript.shell")
oShell.run "start R:"
于 2012-11-08T00:31:28.860 回答
0

另一种选择可能是explorer.exe直接从 UNC 路径开始(如果运行该命令的用户有权访问共享):

computer = InputBox("Enter computer name")
CreateObject("WScript.Shell").Run "explorer /e,\\" & computer & "\C$", 1, False

编辑:如果您必须传递凭据,请坚持使用您所拥有的并将静态计算机名称替换为变量:

computer = InputBox("Enter computer name")
path     = "\\" & computer & "\C$"
username = computer & "\" & computer & "_ADMIN"
password = computer & "#ADMINpass"

Set objNetwork = CreateObject("WScript.Network")
objNetwork.MapNetworkDrive "R:", path, False, username, password

您可以像使用 UNC 路径一样使用该驱动器号打开资源管理器窗口:

CreateObject("WScript.Shell").Run "explorer /e,R:\", 1, False
于 2012-11-08T12:43:57.573 回答