IIS 6.0: что такое WMI-эквивалент «Преобразовать папку в приложение»? - PullRequest
1 голос
/ 18 марта 2010

По сути, представьте, что вам нужно автоматизировать эти шаги:

  1. Откройте службы IIS.
  2. Найдите веб-сайт, найдите папку, щелкните папку правой кнопкой мыши и выберите «Свойства».
  3. Щелкните папку «Каталог».
  4. В разделе «Настройки приложений» нажмите кнопку «Создать».Приложение создано.Нажмите OK, чтобы закончить.

( щелкните для пиктограммы )

Моя конечная цель - Powershell, но ответы, которые используют JScript или VB.NET или любой другойтоже хорошо.

Бонусные баллы, если тот же код работает с приложением IIS7, работающим в режиме совместимости 6.0.

Ответы [ 3 ]

2 голосов
/ 17 августа 2010

Я успешно использовал этот VBScript. YMMV, но, по крайней мере, это отправная точка.

' set a few constants
const CreateNewApplicationPool = true
const UseExistingApplicationPool = false

' Load the Metabase entry if the target directory does exist
Set IISWebDirObj = GetObject("IIS://" & objServer & "/W3SVC/" & objSiteID & "/Root/" & objApp)

if Err.Number <> 0 then
    Err.Clear
    ' Create the Metabase entry if the target directory does NOT exist
    Set IISWebDirRootObj = GetObject("IIS://" & objServer & "/W3SVC/" & objSiteID & "/Root")
    Set IISWebDirObj = IISWebDirRootObj.Create("IISWebDirectory", objApp)
end if

' Assign an existing app pool to the target directory
' Try AppCreate or Appcreate2 to create the app pool at the same time
'  or try using CreateNewApplicationPool for last parameter
IISWebDirObj.AppCreate3 2, objSvcPool, UseExistingApplicationPool

' set the name so it doesn't show up as: Default Application
IISWebDirObj.AppFriendlyName = objSvcPool
IISWebDirObj.SetInfo

' refresh the object in memory so we can change the app pool
IISWebDirObj.GetInfo  
IISWebDirObj.AppPoolId = objSvcPool
IISWebDirObj.SetInfo
0 голосов
/ 13 апреля 2011

Это не совсем то, что вы ищете - они фактически создали виртуальный каталог, а затем сделали его приложением. Но подход - использование ADSI из powershell - должен работать для IIS 6/7 и позволять вам превратить существующий каталог в приложение:

http://arcware.net/creating-iis-applications-with-powershell/

Вызов AppCreate2 (и SetInfo) превращает виртуальный каталог в приложение. Вы также можете вызвать это в обычном каталоге.

0 голосов
/ 18 марта 2010

Проверка IIS6 Automation .

Отредактировано для добавления

По запросу: здесь .

...