Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Tipps & Tricks
Autor
Nachricht
^^kev####
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 476
Wohnort: Haan

Monitor an- oder ausschalten
Verfasst am: 29.06.2009, 14:06

Beschreibung:
Mit Zuhilfename der API-Funktion SendMessage lässt sich der Monitor in den StandBy-Modus schalten und auch wieder einschalten.
Erstellen Sie ein neues Windows-Forms Projekt und platzieren auf die Form einen Button, um den Monitor in den StandBy-Zustand zu versetzen. Mit Hilfe eines Timers wird der Monitor dann nach 10 Sekunden autom. wieder "reaktiviert".


Funktion:
Visual Basic: [code] Imports System.Runtime.InteropServices
Public Class Form1

' Timer-Objekt für das Einschalten des Monitors
Dim WithEvents oTimer As Timer

Public Class Monitor

_
Private Shared Sub SendMessage( _
ByVal hWnd As IntPtr, _
ByVal uMsg As Int32, _
ByVal wParam As Int32, _
ByVal lParam As Int32)
End Sub

Private Enum Params As Int32
SC_MONITORPOWER = &HF170 ' wParam
WM_SYSCOMMAND = &H112 ' uMsg
TURN_MONITOR_OFF = 2 ' Monitor ausschalten
TURN_MONITOR_ON = -1 ' Monitor einschalten
End Enum

Public Shared Sub SetMonitorState(ByVal Index As String, ByVal Handle As IntPtr)
Select Case Index
Case "off"
' Schaltet den Monitor aus
SendMessage(Handle, Params.WM_SYSCOMMAND, Params.SC_MONITORPOWER, _
Params.TURN_MONITOR_OFF)
Case "on"
' Schaltet den Monitor wieder ein
SendMessage(Handle, Params.WM_SYSCOMMAND, Params.SC_MONITORPOWER, _
Params.TURN_MONITOR_ON)
End Select
End Sub
End Class Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click

' Monitor ausschalten und nach gewählter Zeit wieder einschalten
Monitor.SetMonitorState("off", Me.Handle)

' Timer starten
oTimer = New Timer
oTimer.Interval = 10000 ' 10 Sek.
oTimer.Start()
End Sub Private Sub oTimer_Tick(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles oTimer.Tick

' Timer anhalten
oTimer.Stop()

' Monitor wieder einschalten
Monitor.SetMonitorState("on", Me.Handle)
End Sub End Class[/code]

Quelle: vbarchiv.net
_________________
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Tipps & Tricks

Tags: monitor ausschalten, monitor einschalten, basic

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Problem mit always on top funktion 1038 30.10.2009, 11:26
Keine neuen Beiträge IntStr()funktion 1176 11.10.2007, 08:49
Keine neuen Beiträge TopMost Funktion unter DirectX 921 27.07.2007, 10:48
Keine neuen Beiträge Wie Funktion nutzen ? 1100 29.06.2007, 20:59
Keine neuen Beiträge update funktion einbauen 1341 28.01.2007, 23:11
 



[ Time: 0.1473s ][ Queries: 83 (0.0324s) ][ GZIP on - Debug on ]