Detecter l'hybernation sous nt\xp\2000 mais aussi l'arret de fonctionnement de votre prog

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 783 fois - Téléchargée 35 fois

Contenu du snippet

Mise a jour !!
Pu de bug si la gars laisse le pc en hybernation 1 jour et 1 secondes...
Pu de bug lors du passage de minuit
Detecte maintenant le changement d'heure ou de date...

Voila en fait ce bout de code etait destiner a detecter si l'ordi avait etait mis en hybernation durant l'execution du prog (Quel est l'interet, me direz vous ? frenchement j'en sais rien a vous de voir) et finalement rencontrant des dificultées a trouver comment faire j'ai utilisé une methode qui peut non seulement detecter la mise en hybernation du pc (apres son reveil) mais aussi l'interuption du programme (pause en fait) comme quand vous faites pause sous VB.....
Cela peut donc etre pratique, je sais pas pour quoi mais voila je met sa ici...

A oui j'oubliai il faut
Un label
Un timer (Interval = 1000)

Voila c'est tout

Source / Exemple :


Dim Adate As String, Atime As String, diff As Single
Private Sub Form_Load()
Atime = Time 'la date actuelle pour comparaison
Adate = Date 'la date actuelle pour comparaison
Caption = "NOW = " & Time & " - " & Atime & " - Diff " & diff 'juste pr voir
End Sub
Private Sub Timer1_Timer()
diff = DateDiff("s", Atime, Time) 'fait la difference entre les deux date
If diff <> 1 Then
    If diff < 1 And diff <> 86399 Then diff = DateDiff("s", Time, Atime) 'fait la difference entre les deux date mais dans l'autre sans vu que l'ancienne heure est ici superieure a celle courante
    Label1.Caption = "(Hybernation détéctée !! durée : " & diff & " secondes)" 'si l'ecart de ces deux heure est superieures a 1 (seconde) c'est quil y a forcement eu arret du prog pendant un certain temps...
ElseIf Time <> "00:00:00" And Atime <> "23:59:59" And Date <> Adate Then 'au cas ou le gars alume son pc a la meme heure quil la eteint (+1s) du coup le decalage est 1 mais la date a changée, hors sa sa se produit que a minuit !
    Label1.Caption = "(Hybernation détéctée !! durée : " & DateDiff("s", Adate, Date) & " secondes)" 'si l'ecart de ces deux heure est superieures a 1 (seconde) c'est quil y a forcement eu arret du prog pendant un certain temps...
End If
Caption = "NOW = " & Time & " - " & Atime & " - Diff " & diff   'juste pr voir
Atime = Time 'l'heure actuelle pour la comparaison
Adate = Date 'la date actuelle pour comparaison
End Sub

Conclusion :


voila voila j'espere que se sera utile, autant que la mise en veille prolongée elle même ;-)

@++ tlm et bonne prog

A voir également

Ajouter un commentaire

Commentaires

gmni
Messages postés
91
Date d'inscription
mercredi 6 novembre 2002
Statut
Membre
Dernière intervention
20 mars 2009
-
Source originale!
OverDarck
Messages postés
116
Date d'inscription
jeudi 12 juillet 2001
Statut
Membre
Dernière intervention
23 juin 2005
-
Ouai c'est possible meme sans passer par le WOL, juste en réglan le timer dans le bios et ton pc s'allume a l'heure que tu veut le jour que tu veut, mais le pb c'est que tu est obliger de le reconfigurer tout les jour, ou alors essai de metre comme numeros de jour 0 et comme sa ton PC s'allume a heure fixe tout les jours. Ensuite tu utilise un prog qui le met en veille prolongée rien de plus simple en vb par exemple, voila ++
true_picpic
Messages postés
34
Date d'inscription
mercredi 26 novembre 2003
Statut
Membre
Dernière intervention
24 août 2004
-
bien sur que si c'est possible a distance sur des modem ou des cartes reseaux qui possédent l'option "wake on lan" ca permet d'allumer un pc a distance
OverDarck
Messages postés
116
Date d'inscription
jeudi 12 juillet 2001
Statut
Membre
Dernière intervention
23 juin 2005
-
lol c'est impossible néamoins ya des programme specialisé pour l'arret du pc selon des condition precise, ce progamme n'a aucun raport !
néamoins pour allumer ton pc a une heure precise rien de plus simple il faut aller dans le bios !
va dans power managment ou un men u similaire et la ya une option dans wake up events peut etre, pour allumer ton pc a une heure et jour precis si tu veut tout les nuit tu met en numeros du jour 0 ensuite tu fixe l'heure et tu active l'option qui doit s'apeler wake on time ou un truc comme sa, enfin cherche sa y est et sa marche tres bien, ensuite prend un prog pr leteindre a une autre heure !
cs_fcapitaine
Messages postés
10
Date d'inscription
vendredi 27 octobre 2000
Statut
Membre
Dernière intervention
19 décembre 2007
-
L’intérêt serait de pouvoir allumer son PC à une heure précise et de l'éteindre à une autre!!!
perso j'aimerais trouver un prog qui le fasse cela me permettrait d'allumer mon pc toute la nuit et de le laisser éteint le jour (ou en veille)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.