Ошибка разрешений для FSO DeleteFile / MoveFile - PullRequest
2 голосов
/ 08 февраля 2012

Я пытаюсь удалить / переместить файл, используя классический asp fso, но я получаю эту ошибку:

Microsoft VBScript runtime error '800a0046'

Permission denied

Файл находится в c:\files\test\file.txt, и в конечном итоге я хочу переместить его в c:\archive\file.txt

Я начал с Move , но получил ошибку. Затем я разделил его на Копировать и Удалить . Копирование прошло нормально, но все равно та же ошибка на Удалить .

Я исключил метод Удалить , поскольку смог использовать Удалить для файла в папке 'archive', используя этот код:

dim fs,f
set fs=Server.CreateObject("Scripting.FileSystemObject")
set f=fs.GetFile("C:\archive\file.txt")
f.Delete
set f=nothing
set fs=nothing

Я также дважды проверил разрешения для обеих папок, и они одинаковы для IIS_IUSRS: проверка и выполнение, список содержимого папки, чтение, запись проверены. Я также пытался дать права на изменение, но это не имело значения.

Наконец, я проверил атрибуты файла, и он вернулся как 32 (Архив). Я также пытался принудительно удалить:

fso.DeleteFile FileName, true

1 Ответ

3 голосов
/ 08 февраля 2012

Разрешения для папки IIS_USRS должны были специально включать «Удалить» из диалогового окна «Дополнительно» в Windows.

...