Sonntag, 22. August 2010

Bildschirmschoner starten

Heute möchte ich euch zeigen, wie man mittels C# den aktuellen Bildschirmschoner (Screensaver) des Computers startet.
Hierfür benötigen wir eine WinAPI - Funktion, um diese einbinden zu können, brauchen wir als erstes folgende using - Direktive:

using System.Runtime.InteropServices;

Die zum Laden des Bildschirmschoners benötigte Funktion heißt SendMessage(), sie wird folgendermaßen eingebunden:

[DllImport("User32.DLL")]
public static extern int SendMessage(IntPtr hWnd, UInt32 Msg, Int32 wParam, Int32 lParam);

Diese Funktion ist allgemein dazu da, eine Meldung an ein bestimmtes Fenster zu senden. Das Zielfenster wird über den Parameter hWnd spezifiziert.
der 2. Parameter, Msg, beschreibt die zu sendene Nachricht.
Die letzten beiden Parameter ermöglichen die Übergabe von bestimmten Parametern neben der Nachricht.
Um den aktuellen Screensaver aufzurufen, sind folgende Parameter nötig:

SendMessage(this.Handle, 0x112, 0xF140, 0);

Keine Kommentare:

Kommentar veröffentlichen