У меня есть vbscript, который я написал несколько лет назад, в котором перечислены все сайты на сервере IIS с различными атрибутами. Я пытаюсь изменить это, чтобы также указать путь (ы) каждого виртуального каталога, но ни «приложение», ни «applicationcollection» не представляют собой дочерний элемент элемента сайта. Я просмотрел документацию MS, но их примерный код показывает только добавление приложений, а не их перечисление.Как перечислить виртуальные каталоги IIS с помощью vbscript
Это то, что я до сих пор:
Set adminManager = Wscript.createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set sitesCollection = sitesSection.Collection
For siteCount = 0 To CInt(sitesCollection.Count)-1
Set siteElement = sitesCollection(siteCount)
'Various other bits here....
'Then this line doesn't work. I can't figure out how to reference the application
Set appCollection = siteElement.ChildElements.Item("applicationCollection").Collection
Next
Может кто-то должность некоторый пример VBScript для перечисления виртуальных каталогов на сайте?
http://serverfault.com/questions/107619/how-do-i-get-a-list-of-websites-from-iis-showing-the -host-header-value-descript - я тестировал это до Windows 2012 - он работает. – Damien
Спасибо, я видел этот сценарий раньше, но у него есть пара проблем - во-первых, он использует WMI, поэтому для установки IIS6 WMI требуется установить совместимость с IIS6, которая недоступна на машинах, с которыми я работаю. Во-вторых, он перечисляет только основной путь каждого сайта, а не другие виртуальные каталоги. Я бы хотел использовать администратор администратора, как в моем сценарии выше. Я могу получить все остальные атрибуты. Я просто не могу понять, как обращаться к приложениям или виртуальным каталогам. – Vershner