我使用vbscripr打开网络文件夹,如
Set shell = wscript.CreateObject("Shell.Application")
shell.Open "\\xxxxxxxxxxx\c$"
我无法访问驱动器“yyyy”,但我有UN和PW。如何使用vbscript中的凭据打开共享文件夹。
由于
答案 0 :(得分:0)
简短的回答是你不能这样做。 “open”方法不允许传递目录名以外的参数,而“Shell.Application”对象也没有方法可以执行此操作。
来源:
打开方法: http://msdn.microsoft.com/en-us/library/windows/desktop/bb774086(v=vs.85).aspx
Shell.Application的方法列表: http://msdn.microsoft.com/en-us/library/windows/desktop/bb774094(v=vs.85).aspx
此问题的可能解决方法是通过命令提示符重新启动脚本并调用类似PSEXEC的内容。像这样:
Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.run "%COMSPEC% /C psexec -u domain\user -p password -accepteula cscript.exe c:\path\yourscript.vbs"
Set oShell = Nothing
您可以从这里下载PSEXEC:
http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
答案 1 :(得分:-1)
虽然很糟糕但我使用sendkeys(在wscript.sleep 2000之后)......
`...
Set objFolder = objFSO.GetFolder(strShare) 'check access
If Err.Number <> 0 Then
WScript.Sleep 2000
objShell.SendKeys "username" 'username
objShell.SendKeys "{TAB}"
objShell.SendKeys "password" 'password
objShell.SendKeys "{Tab}"
objShell.SendKeys " " 'save credentials
ObjShell.SendKeys "{Tab}"
ObjShell.SendKeys "{ENTER}"
End If
Set ObjShell = Nothing
...`