Как проверить, зарегистрирована ли ASP.NET 4.0 в IIS 7.5

Есть ли надежный способ проверить, зарегистрирован ли ASP.NET 4.0 в IIS 7.5 программно? Мне нужно протестировать его в установщике в качестве предварительного условияперед началом установки приложения ASP.NET.

Если ASP.NET 4.0 не зарегистрирован в IIS, в дальнейшем при установке только что установленное приложение не может быть запущено и возвращает 500 внутреннюю ошибку сервера (и уже поздно решать проблему). Вместо этого я хочу показать некоторое предупреждение (и подсказать, как решить проблему) перед началом каких-либо шагов установки. Но надежного решения пока не найдено.

Насколько мне известно, чтение записей реестра иногда может работать некорректно. Итак, теперь я запускаю aspnet_regiis.exe -lvдля получения списка версий (как предложено здесь) и анализирую вывод. Но даже если .NET зарегистрирован неправильно, мой тест (ложно) завершается успешно, потому что вывод (содержит версию 4.0):

2.0.50727.0     C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll
4.0.30319.0     C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

(Win7 32bit)

Running aspnet_regiis.exe -ir В этом случае может отремонтировать его.

Это похоже на этот вопрос, но мне нужно проверить его программно.

У вас есть идеи или опыт?

13
задан Community 23 May 2017 в 11:53
поделиться