[R] Lastbootuptime
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] Lastbootuptime
Bonjour, je suis en train de faire mon premier script autoit,
j'aurais besoin d'une fonction me calculant depuis combien de temps ma station est allumée.
Equivalent à lastbootuptime.
merci d'avance
j'aurais besoin d'une fonction me calculant depuis combien de temps ma station est allumée.
Equivalent à lastbootuptime.
merci d'avance
Modifié en dernier par Tlem le mer. 11 juin 2008 17:47, modifié 1 fois.
Raison : Ajout de la balise [..] dans le titre
Raison : Ajout de la balise [..] dans le titre
- jbnh
- Niveau 11
- Messages : 1932
- Enregistré le : ven. 02 mai 2008 14:54
- Localisation : Bruxelles
- Status : Hors ligne
Re: lastbootuptime
On doit appeller la ddl: kernel32.dll
Code : Tout sélectionner
#Include <Date.au3>
$aTSB = DllCall ("kernel32.dll", "long", "GetTickCount")
$ticksSinceBoot = $aTSB[0]
dim $iHours, $iMins, $iSecs
_TicksToTime ( $ticksSinceBoot, $iHours, $iMins, $iSecs )
$iDays = int($iHours / 24)
$iHours = $iHours - ($iDays * 24)
msgbox(0,"System Uptime","Days: "&$iDays& ", Hours: "&$iHours &", Minutes: "&$iMins & ", Seconds: "&$iSecs )
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !
Merci
Merci
Re: lastbootuptime
Super
Merci JBNH
Merci JBNH
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: lastbootuptime
Voici la source du code : http://www.autoitscript.com/forum/index ... t&p=222031
Sinon, il y a aussi cette possibilité : http://www.autoitscript.com/forum/index ... t&p=421611
PS : Merci de ne pas oublier la balise dans le titre (Lire les règles).
Sinon, il y a aussi cette possibilité : http://www.autoitscript.com/forum/index ... t&p=421611
PS : Merci de ne pas oublier la balise dans le titre (Lire les règles).
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [R] Lastbootuptime
Bonsoir,
en fait j'ai un petit pb avec ce code.
Quand la machine est allumée depuis + d'un mois
la variable $ticksSinceBoot a une valeur négative.
Donc tous les calculs qui suivent sont eronés...
Une piste ?
Merci.
en fait j'ai un petit pb avec ce code.
Code : Tout sélectionner
#Include <Date.au3>
$aTSB = DllCall ("kernel32.dll", "long", "GetTickCount")
$ticksSinceBoot = ($aTSB[0]/1000)
msgbox(0,"System Uptime", $ticksSinceBoot )
dim $iHours, $iMins, $iSecs
_TicksToTime ( $ticksSinceBoot, $iHours, $iMins, $iSecs )
msgbox(0,"System Uptime", "Hours: "&$iHours &", Minutes: "&$iMins & ", Seconds: "&$iSecs )
$iDays = int($iHours / 24)
$iHours = $iHours - ($iDays * 24)
msgbox(0,"System Uptime","Days: "&$iDays& ", Hours: "&$iHours &", Minutes: "&$iMins & ", Seconds: "&$iSecs )
la variable $ticksSinceBoot a une valeur négative.
Donc tous les calculs qui suivent sont eronés...
Une piste ?
Merci.
Re: [..] Lastbootuptime
Bonjour, tjs le même pb cité dans dans mon poste précédent.
J'ai installé ça sur plusieurs serveurs.
ET apparemment, quand le serveur est allumé depuis plus d'un mois, la valeur affectée à la variable $ticksSinceBoot est négative.
J'ai essayé en changeant dans la ligne
$aTSB = DllCall ("kernel32.dll", "long", "GetTickCount") long par d'autre types.
en récupérant la valeur absolue abs() rien n'y fait.
Avez vous une piste?
J'ai installé ça sur plusieurs serveurs.
ET apparemment, quand le serveur est allumé depuis plus d'un mois, la valeur affectée à la variable $ticksSinceBoot est négative.
J'ai essayé en changeant dans la ligne
$aTSB = DllCall ("kernel32.dll", "long", "GetTickCount") long par d'autre types.
en récupérant la valeur absolue abs() rien n'y fait.
Avez vous une piste?
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [R] Lastbootuptime
Et celui-ci :
Code : Tout sélectionner
; Script basé sur le code original de bluebearr.
; http://www.autoitscript.com/forum/index.php?showtopic=31010&view=findpost&p=222019
#include <date.au3>
Dim $colItems, $Output
$objWMIService = ObjGet("winmgmts:\\localhost\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem", "WQL", 0x10 + 0x20)
If IsObj($colItems) Then
For $objItem In $colItems
$Output = WMIDateStringToDate($objItem.LastBootUpTime)
Next
EndIf
Func WMIDateStringToDate($dtmDate)
Return (StringLeft($dtmDate, 4) & "/" & _
StringMid($dtmDate, 5, 2) & "/" & StringMid($dtmDate, 7, 2) _
& " " & StringMid($dtmDate, 9, 2) & ":" & StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate, 13, 2))
EndFunc ;==>WMIDateStringToDate
$uptime = _DateDiff('s', $Output, _NowCalc())
$daysUp = Int($uptime / (60 * 60 * 24))
$remainder = Mod($uptime, 60 * 60 * 24)
$hoursUp = Int($remainder / (60 * 60))
$remainder = Mod($remainder, 60 * 60)
$minUp = Int($remainder / 60)
$secUp = Mod($remainder, 60)
MsgBox(0, "Uptime", "Votre Uptime est de :" & @LF & " " & $daysUp & " Jours, " _
& $hoursUp & " Heures, " & $minUp & " Minutes, " & $secUp & " Secondes.")
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [R] Lastbootuptime
Le dernier script proposé par tlem,
renvoie la bonne valeur d'uptime.
Merci pour votre aide
renvoie la bonne valeur d'uptime.
Merci pour votre aide
