Это довольно сложная проблема, надеюсь, у кого-нибудь из вас есть гуру asp / VB. Я пытаюсь динамически установить разрешения на выполнение папки в IIS6 со страницы asp. Я дал серверу полные разрешения для внесения необходимых изменений. Когда я запускаю код, я получаю:
Ошибка выполнения Microsoft VBScript '800a0046'
В доступе отказано: 'GetObject'
/ learning.asp, строка 11
У меня есть сервер с IIS6, на котором запущено несколько веб-сайтов asp. Я использую такой код для создания папки с именем «files»
set fso = Server.CreateObject("Scripting.FileSystemObject")
set folder3 = fso.CreateFolder(Server.MapPath(username & "/files"))
set folder3 = nothing
set fso = nothing
Работает нормально и создает папку с файлами именно там, где я хочу. Тем не менее, новая папка имеет права на выполнение, заданные как «scripts и exe», и мне нужно, чтобы она была «never» или false. Есть системный объект, который вы можете вызвать, чтобы внести это изменение, и у меня даже есть фрагмент кода, который я написал после прочтения другого учебника.
Не работает и выдает вышеуказанную ошибку. Я думаю, может быть, я просто что-то упускаю, но это немного над моей головой. Вот то, что я использовал, но я не знаю синтаксис или что именно вызывать.
Set root = GetObject("IIS://localhost/" & username)
Set newVDir = root.Create("IIsWebVirtualDir","files")
newVDir.Path = "e:\iis3\server2\ADSI"
newVDir.AccessScript = False
newVDir.SetInfo
Я искал в течение 3 дней, пытаясь найти решение этой проблемы, но, видимо, не так много людей занимаются этим, потому что я не могу найти ни одной записи об этом.
Во всяком случае, я не понимаю, что должен делать геобъект, и какой newVDir.path я должен использовать?
Заранее благодарю за любые полезные предложения, которые у вас могут быть.