使用按钮运行PS表单。按钮按下后执行一些操作,然后调用模块。我需要使用该模块将文件夹从D:\FolderName01\MyFolderName移动到D:\FolderName02。
我以管理员身份登录。服务器2012-R2
当从按钮按下和自动化脚本运行时,代码不会运行。
在编辑代码时,我突出显示它并使用“运行选择”没有问题地运行。
这就是整个模块。没有其他的操作。
代码:
function MoveTheFolder($VariableName){
if ( -not (Test-Path "D:\FolderName02") ) {
md "D:\FolderName02"}
cd -Path d:\
Move-Item -Path "D:\FolderName01\$VariableName" -Destination "D:\FolderName02" -Force
}
成功创建了FolderName02文件夹。$VariableName已传递到模块中,并根据断点分析和实际错误消息是正确的。原始路径是DVD驱动器(F:上的.iso文件)。
给出的错误信息为
move-item: Access to the path '[D:\FolderName01\$VariableName]' is denied.
我可以使用Windows资源管理器手动移动文件夹,因此它们似乎与打开的应用程序没有关联。
$VariableName
的父文件夹设置为“EVERYONE”以便其子项拥有完全访问权限吗?或者如果您正在使用ISE,请关闭并以管理员身份重新打开它?如果您可以通过explorer.exe移动它但无法通过脚本移动它,那么仍然听起来像是权限问题。 - Nate