Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用ActiveX DeleteFile时权限被拒绝_Javascript_Windows_Activex_Wsh - Fatal编程技术网

Javascript 使用ActiveX DeleteFile时权限被拒绝

Javascript 使用ActiveX DeleteFile时权限被拒绝,javascript,windows,activex,wsh,Javascript,Windows,Activex,Wsh,我有一个脚本,它工作得非常好,直到它试图删除它创建的临时文件,然后我收到一条权限被拒绝的错误消息 命令很简单: fso.DeleteFile(tempWAVPath) 其中fso是ActiveXObject(“Scripting.FileSystemObject”)和tempWAVPath是:C:\Users\XXX\AppData\Local\Temp\RandomTempName\TemporaryFile 考虑到脚本同时创建了文件夹和文件,我不明白为什么会出现权限被拒绝的错误 脚本正在通

我有一个脚本,它工作得非常好,直到它试图删除它创建的临时文件,然后我收到一条权限被拒绝的错误消息

命令很简单:

fso.DeleteFile(tempWAVPath)
其中
fso
ActiveXObject(“Scripting.FileSystemObject”)
tempWAVPath
是:
C:\Users\XXX\AppData\Local\Temp\RandomTempName\TemporaryFile

考虑到脚本同时创建了文件夹和文件,我不明白为什么会出现权限被拒绝的错误

脚本正在通过Admin CMD和
cscript


有人知道为什么吗?

啊!该文件是只读的。通过添加以下内容修复了此问题:

file = fso.GetFile(tempWAVPath)
if(file.attributes & 1) {
    file.attributes = file.attributes - 1
}

处理只读文件的另一种方法是传递第二个布尔参数,如下所示:

fso.DeleteFile(tempWAVPath, true);

对于我来说,其他两个答案在某个特定文件上都不成功

然而,这确实起到了100%的作用:

file = fso.GetFile(FILE_PATH);
file.Delete(true);

在特定情况下,我的命令仍然失败。似乎有某种类型的文件锁-有没有办法检查/清除它?