Как проверить версию iis на программном обеспечении

как проверить версию iis на программном использовании с помощью С#.

Ответ 3

Я сделал это с помощью powershell. Те же самые .Net-библиотеки и типы могут использоваться с С#:

function Validate-IISVersion([switch] $ContinueOnError = $false)
{

    if ($ContinueOnError)
    { $ErrorActionPreference = "SilentlyContinue" }
    else
    { $ErrorActionPreference = "Stop" }

    # Using GAC to ensure the IIS (assembly) version
    $IISAssembly = [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Administration")
    $IISVersion = $IISAssembly.GetName().Version
    $IISVersionString = [string]::Format("{0}.{1}.{2}.{3}", $IISVersion.Major, $IISVersion.Minor, $IISVersion.Build, $IISVersion.Revision)
    if (!$IISVersionString.Equals("7.0.0.0"))
    {
        if ($ContinueOnError)
        {
            Write-Host  "`nConflicting IIS version found! [Version: $IISVersionString]`t    " -NoNewline -ForegroundColor Red
        }
        Write-Error "Conflicting IIS version found [$IISVersionString]! @ $(Split-Path $MyInvocation.ScriptName -leaf)"
        return $false
    }
    else
    {
        return $true
    }
}