voila , je voudrai créer un petit script qui me permet de calculer le temps d'utilisation de deux logiciels en même temps, en détails :
-dès qu'un logiciel est entrain d’être manipulé ( je dis bien manipulé et non pas ouvert ), donc sa n'a pas de relation avec le processus mais avec la fenêtre du logiciel , si elle est au premier plan, c'est qu'il est entrain d’être utilisé(en utilisant WInwaitActiv ou winActiv).un compteur ou un chronomètre démarrera ,
- dés que tu change de fenêtre pour faire autre chose( se connecter, consulter ses mails) , le chronomètre s’arrête.
- et quand tu reviens à ton application : il continue son comptage
le but est de le faire avec 2 logiciels en même temps , dèes que l'un des 2, est utilisé, le chrono démarre , et il continue si tu passe à l'autre application.
si vous avez des idée n’hésitez pas, merci
Code : Tout sélectionner
[spoiler=]#include <WindowsConstants.au3>
#include <GuiConstantsEx.au3>
#include <Timers.au3>
#include <GuiStatusBar.au3>
#include <ProgressConstants.au3>
#include <Date.au3>
#include <GUIConstants.au3>
Dim $Ver = "Soft Use"
HotKeySet( "!x", "_Exit" );Alt+X to exit
GUICreate( $Ver, 300 , 120, -1, -1)
$Clock = GUICtrlCreateLabel( $Ver, 160, 10, 80 )
$Label1 = GUICtrlCreateLabel(" Soft Use", 30, 10, 100)
$button1 = GUICtrlCreateButton("Stop",20,80)
$button2 = GUICtrlCreateButton("INIT",260,80)
GUISetState()
Opt("WinTitleMatchMode", 2)
$oldSeconds=@SEC
$actSeconds = '0'
$i=0
while 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $button2
$i=0
$Time = _DateAdd ("s", $i, "2000/01/01 00:00:00")
$Dif = StringSplit ( $Time, " " )
GUICtrlSetData ( $Clock, $Dif[2] )
Case $msg = $button1
send("!x")
EndSelect
while WinwaitActive("Firefox") or winwaitActive("Internet Explorer") ; exemple de firefox et internet exmplorer
$actSeconds = @SEC
if $oldSeconds <> $actSeconds then
$i=$i+1
$Time = _DateAdd ( "s", $i, "2000/01/01 00:00:00" )
$Dif = StringSplit ($Time, " " )
GUICtrlSetData ($Clock, $Dif[2] )
$oldSeconds=$actSeconds
endif
wend
wend
Func _Exit()
MsgBox( 16, $Ver, " stopped at:" & @LF & $Dif[2], 5 )
GUIDelete()
Exit
EndFunc[/spoiler]




