Eteindre écran moniteur 1

Eric - 1 nov. 2017 à 20:33
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 - 1 nov. 2017 à 22:51
Bonjour,

L'un de vous aurait-il un code VB.net me permettant d'éteindre l'écran principal (celui déclarer en moniteur n°1 sous Windows car 2 écrans sont branchés sur le PC) ?

Je précise que je ne souhaite pas un déclenchement de l'écran de veille mais bien éteindre l'écran tel que cela est possible au travers des options d'alimentation Windows au bout d'un certain temps.

Par avance, merci
Eric

3 réponses

Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 656
1 nov. 2017 à 21:24
Bonsoir
ici en C#
http://fci-h.blogspot.fr/2007/03/turn-off-your-monitor-via-code-c.html

Tu passes ça dans un traducteur en ligne, et ça devrait le faire.
0
Merci pour votre réactivité. J'ai trouvé un code similaire directement en VB.net qui fonctionne mais je ne maîtrise pas comment gérer l'allumage/l'extinction du moniteur 1 ou du moniteur 2.

C'est celui-ci :
Public Class Form1

    Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" _
     (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, _
      ByVal lParam As Integer) As Integer

    Const HWND_BROADCAST As Integer = &HFFFF
    Const SC_MONITORPOWER As Integer = &HF170
    Const WM_SYSCOMMAND As Short = &H112S

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'Eteindre écran
        SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2)
        'Déclenchement de la tempo avant ré-allumage
        Timer1.Enabled = True
    End Sub


    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        'Allumer écran
        SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, -1)
        'Désactivation de la tempo
        Timer1.Enabled = False
    End Sub

End Class


EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45
0
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 656
1 nov. 2017 à 22:51
Je ne sais pas s'il est possible de distinguer le moniteur.
0
Rejoignez-nous