我有一个VBScript程序,可以在用户的临时文件夹中创建一个文件夹:
set fso = CreateObject("scripting.FileSystemObject")
temp = fso.GetSpecialFolder(2)
dropzone = temp & "\{d450c76c-2ad8-4f73-af8a-ccc5ba28036a}\"
If Not fso.FolderExists(dropzone) Then
set NewFolder = fso.CreateFolder(dropzone)
End If
set NewFolder = Nothing
在程序结束时,我想删除该文件夹。我尝试了这个,但它给了我一个允许拒绝错误:
set deletefolder = fso.GetFolder(dropzone)
deletefolder.Delete(True)
set fso = Nothing
答案 0 :(得分:2)
@giodamelio奇怪的是,我把代码行msgBox dropzone
放在你的代码之前就行了。当我发表评论msgbox
它不起作用?
答案 1 :(得分:2)
由于删除文件并不喜欢,因此您必须删除路径中的拖尾空白。
现在,随时拍摄信使......
答案 2 :(得分:1)
这很可能不是真正的“访问被拒绝”。更可能是“文件打开时无法删除”。关闭对该文件夹的任何打开引用(文本流,您可能已启动的进程,仔细查看)并执行
fso.DeleteFolder(dropzone)
答案 3 :(得分:1)
检查文件的属性,如果尚未设置,则设置为0.
set deletefolder = fso.GetFolder(dropzone)
if deletefolder.Attributes=0 then
deletefolder.Delete(True)
else
deletefolder.Attributes=0
deletefolder.Delete(True)
end if
set fso = Nothing
答案 4 :(得分:0)
尝试使用 Kill(“”文件夹路径“)
答案 5 :(得分:0)
要使DeleteFolder工作,脚本的当前目录不应该是要删除的文件夹路径的一部分。 使用Shell.CurrentDirectory将当前目录更改为某个系统路径,然后调用DeleteFolder。 我已经证实这是有效的。 查看this.
答案 6 :(得分:0)
即使将其属性设置为0,我仍然获得拒绝权限 它仍然是16。
我知道这不是答案。 但我不想为相同的查询打开一个新线程。 我也尝试过针对特定路径执行任务终止。
$(document).ready(function(){
$('Form').attr("target", "_blank");
});
答案 7 :(得分:-1)
如果您的文件夹路径带有反斜杠,则该方法将引发错误!我的大多数脚本有意使用其他功能在路径末尾加反斜杠,因此我删除了路径的最后一个字符(反斜杠)和中提琴!