WSH Script to remove un-needed IIS Script-Mappings using ADSI - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- WSH Script to remove un-needed IIS Script-Mappings using ADSI (http://www.webasp.net/article/2/1951.htm) |
| -- 作者:未知 -- 发布日期: 2003-07-11 |
| This script removes un-needed script mappings on an IIS 5.0 web server. Script mappings are the isapi dlls or exe's that execute webpages through IIS. This script requires administrator access, and ADSI 2.5 files. This script queries the IIS metabase and returns a multi-valued array list. The script loops through the array and build a new set of Script-Mappings. We assume no responsibility for someone trying this script and any damages that may occur(Try at own risk!). Testing on a development machine is strongly recommend before running in a production environment. Backing up the metabase is also strongly recommended. Here is the code Dim strExt Dim myValue dim strNothing dim strBuild dim i dim iValue Set myValue = GetObject("IIS://LocalHost/W3SVC/1/root") 'Returns an array multi valued list 'Puts the values in a local array variable myArray myArray = myValue.Get("ScriptMaps") 'Loops through building a string 'based on myArray list of values For i = 0 To UBound(myArray) iValue = InStr(myArray(i), ",") strExt = Left(myArray(i), iValue - 1) Select Case strExt Case ".idq", ".ida", ".printer", ".htw", ".htr" 'Builds a bogus string of un-needed mappings strNothing = strNothing & myArray(i) Case Else 'Builds a string of mappings with 'the # as the delimiter strBuild = strBuild & myArray(i) & "#" End Select Next 'Returns a 1-dimensinonal array based 'on the string i build existing values strBuild = split(strBuild, "#") 'Clears current Script Mappings in the metabase myValue.Put "ScriptMaps", VBNull 'Inserts values without un-needed mappings into metabase myValue.Put "ScriptMaps", strBuild myValue.SetInfo set myValue = Nothing |
| webasp.net |