2010-09-29 3 views
0

фонIIS 5.1: Программное Создание виртуального подкаталогу

Я пытаюсь автоматизировать создание виртуальных каталогов, основанных на местоположении существующего виртуального каталога и его подкаталогов.

Пример:

C: \ WebSites \ Родительского \ NewVirtualDirectories

Где Родитель виртуальный каталог и NewVirtualDirectories содержит какие-либо автоматизированные виртуальные каталоги.

Проблема

Используя следующий код:

Option Explicit 
Dim args, strComputer, strVdirName, strVdirPath, objVdir, objIIS, objWebSite 

Set args = WScript.Arguments 

strComputer = "localhost" 
strVdirName = args(1) 
strVdirPath = args(0) 

Set objIIS = GetObject("IIS://" & strComputer & "/W3SVC/1") 
Set objWebSite = objIIS.GetObject("IISWebVirtualDir","Root/Parent") 
Set objVdir = objWebSite.Create("IISWebVirtualDir",strVdirName) 
objVdir.AccessRead = True 
objVdir.Path = strVdirPath 
objVdir.AppCreate (True) 
objVdir.SetInfo 

WScript.Quit 

Я могу создать ребенок в Родитель, но они появляются непосредственно под родителем. Мне нужно, чтобы они были в подпапке.

я получаю: http://localhost/Parent/NewSite

Я хочу: http://localhost/Parent/NewVirtualDirectories/NewSite

Я попытался

Set objWebSite = objIIS.GetObject("IISWebVirtualDir","Root/Parent/NewVirtualDirectories") 

но NewVirtualDirectories не виртуальный каталог (я не хочу, чтобы это было), так Я получаю сообщение об ошибке. Я могу получить желаемый эффект, когда я делаю это вручную в диспетчере IIS, но я не могу понять, как его автоматизировать.

Любая помощь была бы принята с благодарностью.

ответ

0

EDIT

Для тех, кто сталкивается с подобными проблемами, я нашел большой ресурс для VBScript-ки

http://www.cruto.com/resources/vbscript/vbscript-examples/vbscript-sitemap.asp


После этого много больше рыть (методом проб и ошибок) Я смог понять это.

Обратившись к существующей папке как IISWebDirectory, я смог ее выбрать, а затем создать приложение без создания виртуального каталога.

Option Explicit 
Dim args, strComputer, strVdirName, strVdirPath, objVdir, objIIS, objWebSite 

Set args = WScript.Arguments 

strComputer = "localhost" 
strVdirName = args(1) 
strVdirPath = args(0) 

Set objIIS = GetObject("IIS://" & strComputer & "/W3SVC/1") 
Set objVdir = objIIS.GetObject("IISWebDirectory","Root/Parent/NewVirtualDirectories/" + strVdirName) 
objVdir.AccessRead = True 
objVdir.AccessScript = True 
objVdir.AppFriendlyName = strVdirName 
objVdir.AppCreate (True) 
objVdir.SetInfo 

WScript.Quit 
Смежные вопросы