Comment interdir l'arrêt et la mise en veille par le code ?

Résolu
ehjoe Messages postés 728 Date d'inscription samedi 4 avril 2009 Statut Membre Dernière intervention 30 mars 2014 - 20 janv. 2012 à 14:21
ehjoe Messages postés 728 Date d'inscription samedi 4 avril 2009 Statut Membre Dernière intervention 30 mars 2014 - 21 janv. 2012 à 16:28
Bonjour,

Toujours pour ma pointeuse, il me reste à interdir l'extinction de l'ordinateur et interdir sa mise en veille dans le code de l'application et durant le fonctionnement de cette dernière, avez-vous une idée, ou plusieurs ?

(vbNet10 sur PC (xp, vista, seven (32/64))

Merci, cordialement, Joe.

21 réponses

ehjoe Messages postés 728 Date d'inscription samedi 4 avril 2009 Statut Membre Dernière intervention 30 mars 2014 4
21 janv. 2012 à 15:53
Cher Alain,

Pour respecter scrupuleusement les pré-déclarations de VnNet10, est-ce que ce code te semble conforme :

Public Class Form1
Private Declare Function SetThreadExecutionState Lib "kernel32" (ByVal esFlags As Int32) As Int32

Public Enum EXECUTION_STATE As Integer
 ES_CONTINUOUS = &H80000000
 ES_DISPLAY_REQUIRED = &H2
 ES_SYSTEM_REQUIRED = &H1
 ES_AWAYMODE_REQUIRED = &H40
End Enum

Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
SetThreadExecutionState(EXECUTION_STATE.ES_DISPLAY_REQUIRED Or EXECUTION_STATE.ES_CONTINUOUS)
End Sub

Sub Form1_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
SetThreadExecutionState(EXECUTION_STATE.ES_CONTINUOUS)
End Sub
End Class



Et en questions :

ES_DISPLAY_REQUIRED
ES_CONTINUOUS


C'est 2 constantes signifient quoi ?


On utilise dansn une commande deux constantes à la fois :
ES_DISPLAY_REQUIRED or ES_CONTINUOUS


Ici on utiliser 2 constante, l'une ou (OR) l'autre :
Est-ce qu'on peut se passer de l'un ou de l'autre dans mon cas, laqeulle, car il y en a une qui est utilsé dans les deu cas (ES_CONTINUOUS), ce qui m'étonne ?

Merci, au plaisir, cordialement
0
Rejoignez-nous