'2015 01 22
'Lancez ce .vbs de préférence avec cscript.exe //Nologo
'Ainsi la première ligne récupérée sera la effectivement la première générée par lexe qui sera lancé (et pas autre chose comme "Microsoft (R) Windows Script Host Version 5.8")
Dim ObjShell, ObjExec, Commande, PIDMonExe, UneLigneDeResultat, NumeroLigneResultat
Dim VarComputername
Dim Position
Dim NbrSessions, NbrSessionsActives
Commande = "query.exe session"
Set ObjShell = CreateObject("WScript.Shell")
Set ObjExec = ObjShell.Exec(Commande) 'Lancement de l'exe
PIDMonExe = ObjExec.ProcessID 'Récupération du PID de l'exe
VarComputername = ObjShell.ExpandEnvironmentStrings ( "%COMPUTERNAME%" )
'Récupération du résultat affiché par l'exe
NumeroLigneResultat = 0
NbrSessions = 0
NbrSessionsActives = 0
Do While Not ObjExec.StdOut.AtEndOfStream
NumeroLigneResultat = NumeroLigneResultat + 1
UneLigneDeResultat = ObjExec.StdOut.ReadLine() 'On récupère une ligne générée par l'exe
UneLigneDeResultat = Trim(UneLigneDeResultat)
If (Len(UneLigneDeResultat) > 0) And (Left(Lcase(UneLigneDeResultat), 7) = "ica-tcp") Then
NbrSessions = NbrSessions + 1
Position = Instr(1, Lcase(UneLigneDeResultat), "active", 1)
If Position > 0 Then NbrSessionsActives = NbrSessionsActives + 1
End If
Loop
Wscript.echo "NbrSessions : " & NbrSessions
Wscript.echo "NbrSessionsActives : " & NbrSessionsActives
'Shutdown.exe -r -f -t 1 -c "Reboot du serveur car qfarm load à 10000 ou 20000" -d p:2:4
'Wscript.echo "Exe terminé"
Set ObjExec = Nothing
Set ObjShell = Nothing
Lien vers le fichier : cliquez ici
Article(s) précédent(s)