Удалить виртуальный каталог / веб-приложение на веб-сайте по умолчанию с помощью .NET - PullRequest
0 голосов
/ 01 марта 2019

Я работаю над деинсталлятором, который должен проверить, присутствует ли веб-приложение / виртуальный каталог в IIS, и удалить его, если он там есть.Прямо сейчас я использую VBScript, чтобы проверить, существует ли виртуальный каталог,

Function VDirExists( name )
Dim objIIS
If IsEmpty(name) Or IsNull(name) Or Len(name) = 0 Then
    VDirExists = False      
    Exit Function
End If

On Error Resume Next
Set objIIS = GetObject( "IIS://localhost/W3SVC/1/Root/" & name )

If Err.Number = 0 Then    
    VDirExists = True
Else        
    Err.Clear
    VDirExists = False
End If
'MsgBox " VDIR Exists IIS: " & VDirExists & "Name :" & name
End Function

Для удаления виртуального каталога я использую следующий код,

set objW3SVC = getObject("IIS://localhost/W3SVC/1/Root")    
objVirtualDir = objW3SVC.Delete("IISWebVirtualDir", "AppName")

Проблема заключается в следующемкажется устаревшим и не работает на серверах / машинах с Windows, где функция Windows IIS 6 Management Compatibility не включена.Есть ли способ добиться этого с помощью C # или WIX.Существует ли код .NET, который будет работать для всех версий IIS или серверов Windows?

...