' ---------------------------------- ' Liste des ordinateurs d'un domaine ' J.C.BELLAMY © 2001 ' ---------------------------------- Dim args, oWinNT, oDomain Set Shell = WScript.CreateObject("WScript.Shell") Set args=Wscript.Arguments if args.Count=0 then Wscript.echo "Nom de domaine (ou WorkGroup) omis" Wscript.quit end if Call TestHost domain=args(0) Wscript.echo "Liste des machines du domaine " & domain set oWinNT=GetObject("WinNT://" & domain) for each oDomain in oWinNT if lcase(oDomain.class)="computer" then Wscript.echo oDomain.name next '-------------------------------------------------------------------- ' Sous programme de test du moteur ' Vu les sorties générées, c'est CSCRIPT (et non pas WSCRIPT) ' qui doit être utilisé Sub TestHost dim rep SW_SHOWNORMAL=1 strFullName =lcase(WScript.FullName) strappli=lcase(Wscript.ScriptFullName) i=InStr(1,strFullName,".exe",1) j=InStrRev(strFullName,"\",i,1) strCommand=Mid(strFullName,j+1,i-j-1) if strCommand<>"cscript" then rep=MsgBox("Ce script doit être lancé avec CSCRIPT" & VBCRLF & _ "Cela peut être rendu permanent avec la commande" & VBCRLF & _ "cscript //H:CScript //S /Nologo" & VBCRLF & _ "Voulez-vous que ce soit fait automatiquement?", _ vbYesNo + vbQuestion,strappli) if rep=vbYes then nomcmd="setscript.bat" Set ficcmd = fso.CreateTextFile(nomcmd) ficcmd.writeline "@echo off" ficcmd.writeline "cscript //H:CScript //S /Nologo" ficcmd.writeline "pause" ficcmd.writeline chr(34) & strappli & chr(34) ficcmd.writeline "pause" ficcmd.close shell.Run nomcmd, SW_SHOWNORMAL,true end if WScript.Quit end if end sub '--------------------------------------------------------------------