Re: Как программно узнать версию IIS?
От: Andir Россия
Дата: 31.08.04 00:12
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Задача: хочу написать html документ, в котором при помощи скрипта выяснить наличие и версию локального IIS.

S>Понятно, что можно сделать запрос к http://localhost:80/. Есть ли другие способы, без парсинга хидеров? Например, через ADSI?
S>Поиск в MSDN и здесь ничего не дал.

Можно просто обратится к управляющим COM для IIS. Информацию ищи в скриптах администрирования для IIS (в частности adsutil.vbs). Искать скрипты в %SystemRoot%/system32/iis*.vbs + intepub/wwwroot/adminscripts/*.vbs
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iissdk/iis/using_iis_programmatic_administration.asp

вкратце, на JScript:
// WSH + ADSI
var obj = GetObject("IIS://localhost/W3SVC/Info");
WScript.Echo(obj.MajorIIsVersionNumber + "." + obj.MinorIIsVersionNumber)

// WMI
var locatorObj = new ActiveXObject("WbemScripting.SWbemLocator");
var providerObj = locatorObj.ConnectServer("localhost", "root/MicrosoftIISv2");
var nodeObj = providerObj.Get("IIsWebVirtualDir='W3SVC/Info'");

alert(obj.MajorIIsVersionNumber + "." + obj.MinorIIsVersionNumber);


P.S. Я не в курсе как с ADSI работать через ActiveX поэтому только на WSH.

С Уважением, Andir!
using(RSDN@Home 1.1.4 beta 2){/* Работаем! */}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.