2013-05-30 3 views
2

У меня есть сценарий, который отлично работает, пока он не попытается удалить временные файлы, которые он создает, после чего я получаю сообщение об ошибке с разрешением отказа.Разрешения, запрещенные при использовании ActiveX DeleteFile

Команда просто:

fso.DeleteFile(tempWAVPath) 

Где fso является ActiveXObject("Scripting.FileSystemObject") и tempWAVPath является: C:\Users\XXX\AppData\Local\Temp\RandomTempName\TemporaryFile

Учитывая сценарий, созданный как папку и файл, я недоумевал, почему это получение Разрешение отклонено.

Сценарий бежится через администратора CMD и cscript

Кто-нибудь есть какие-либо идеи, почему?

ответ

0

Ах! Файл был ReadOnly. Фиксированный, добавив следующее:

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

Другой способ обработки только для чтения файлов должен пройти второй логический аргумент следующим образом:

fso.DeleteFile(tempWAVPath, true); 
+0

команды в конкретном случае по-прежнему не для меня. Похоже, может быть какая-то файловая блокировка - любой способ проверить/очистить ее? – Enigma

1

Ни один из других ответов были успешными для меня на конкретный файл.

Это, однако, работают на 100%:

file = fso.GetFile(FILE_PATH); 
file.Delete(true); 
Смежные вопросы