Per Script prüfen, ob der Internet Explorer 7 installiert ist

Lange nichts mehr geschrieben, aber durch den Internet Explorer 7 habe ich doch tatsächlich Stress 🙂

Wir haben den nun per WSUS verteilt und es gibt (natürlich) Probleme. Wie sollte es auch anders sein? Nun denn, ich musste irgendwie rausbekommen, ob der IE7 auf bestimmten PCs korrekt installiert wurde, oder nicht. Dazu habe ich mir ein einfaches Script zusammengebastelt, angelehnt an ein Script aus dem Microsoft Script Center: List Internet Explorer File Version Information.

' some used variables dim arrPCs() dim SinglePC dim PClist dim counter, i, j ' text file containing computer names to be checked PCList = "PCList.txt" ' read computer names from text file set objFSO = CreateObject("Scripting.FileSystemObject") Set objListFile = objFSO.GetFile(PCList) counter = 0 if objListFile.Size <> 0 Then Set objListFile = nothing Set objListFile = objFSO.OpenTextFile(PCList, 1) counter = 0 Do While objListFile.AtEndOfStream <> True counter = counter + 1 redim preserve arrPCs(counter) line = trim(objListFile.Readline) arrPCs(counter) = line Loop objListFile.Close ' list file is empty else Set objListFile = nothing redim preserve arrPCs(0) end if for i = 1 to counter strComputer = ucase(arrPCs(i)) ' ping PCs Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}")._ ExecQuery("select * from Win32_PingStatus where address = '"_ & strComputer & "'") For Each objStatus in objPing ' PC doesn't respond If IsNull(objStatus.StatusCode) or objStatus.StatusCode <> 0 Then wscript.echo strComputer & ": PC doesn't respond to ping" ' PC responds Else Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & _ "\root\cimv2\Applications\MicrosoftIE") Set colIESettings = objWMIService.ExecQuery _ ("Select Version from MicrosoftIE_FileVersion Where File='iexplore.exe'") For Each strIESetting in colIESettings Wscript.Echo strComputer & ": IE Version on PC: " & strIESetting.Version Next End If Next Next

Das Script gibt lediglich für alle PCs/IP-Adressen in der Datei PCList.txt die Version des Internet Explorers an. Die Datei muss die PC-Namen oder IP-Adressen einfach mit einem Zeilenumbruch getrennt enthalten. Natürlich benötigt man Administratorrechte auf den abzufragenden Rechnern. Ausführen kann man es auf der Kommandozeile mittels cscript ie7.vbs (falls man die Datei so nennt ;))

Zum Download gibt’s das Script natürlich auch: ie7.txt

Über Stefan

Polyglot Clean Code Developer

2 Kommentare

  1. WMI Rockt.
    Mache auch gerade voll viel mit WMI.

  2. Ja, wenn man viele administrative Aufgaben zu erledigen hat, kann das Scripting einem schon helfen… Früher war es bei uns ein Akt, weil wir noch Windows NT im Einsatz hatten und dort nicht alles funktionierte, aber in einer reinen XP-Umgebung ist es mit Scripts wirklich sehr einfach die Remote-Administration zu bewältigen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax