使用VBScript拒绝权限

问题描述:

我有一个将移动和重命名文件夹的脚本。在本地运行时成功,但在尝试使用映射驱动器读取或写入目录时,该过程会失败,并显示“权限被拒绝”错误。使用VBScript拒绝权限

VBScript不像映射驱动器吗?以下是具有读取和写入源和目标凭据的脚本:

dim objNetwork 

Set objNetwork = WScript.CreateObject("WScript.Network") 
strLocalDrive = "Y:" 
strRemoteShare = "\\servername\directory" 
strPer = "False" 
strUsr = "userid" 
strPas = "password" 
objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas 

Dim fso, objFol, objMoveFol, strPathBuild 

Set fso = CreateObject("Scripting.FileSystemObject") 
Set objFol = fso.GetFolder("D:\Source") 

For Each objMoveFol In objFol.SubFolders 

    'Replace the root folder locations in the path 
    strPathBuild = Replace(objMoveFol, "D:\Source", "Y:\Destination") 

    'Do the required other fiddle 
    strPathBuild = Replace(strPathBuild, "A.", "Ack~") 

    fso.Movefolder objMoveFol, strPathBuild 

Next 

该代码看起来不错。另外,如果它在本地工作,我猜测你正在映射网络驱动器的用户没有权限编辑该文件夹。

尝试使用相同的用户名和密码手动映射驱动器。复制一个文件夹到相同的位置来检查用户的权限

+0

熊框,谢谢你的回应。我确实按照您的指示进行了操作,并能够手动将驱动器映射到目标位置并创建文件夹。我不确定为什么我收到此错误,但我确实同意并认为正在使用的帐户可能没有正确的权限来浏览整个网络。我将与网络管理员合作,看看我们是否可以使该帐户成为域管理员,以测试此过程。再次感谢您的反馈。欣赏它。 – 2011-06-06 15:34:55

+0

熊箱,网络管理员发现问题,我们可以前进。 VBS的属性必须更改为包含将执行该过程的用户帐户。感谢您的反馈。 – 2011-06-06 20:35:23