Mit nachfolgender Klasse lässt sich der im System eingestellte Bildschirmschoner ermitteln. Weiterhin wird der Bildschirmschon anschließend autom gestartet. Erstellen Sie ein neues Windows-Forms Projekt, platzieren auf die Form einen Button (Button1) und fügen nachfolgende Code in den Codeteil der Form ein: Imports Microsoft.Win32 Public Class Form1 ''' <summary> ''' Klasse zur Ermittlung des Bildschirmschoner-Pfades aus der ''' Registrierdatenbank. ''' </summary> Private Class GetScreenSaverPath ' Hinweis: Der Eintrag - SCRNSAVE.EXE - ist nur vorhanden wenn zuvor ' ein Screensaver definiert wurde. Private Const ValueName As String = "SCRNSAVE.EXE" ''' <summary> ''' Übergibt den Pfad an die Funktion GetPath ''' </summary> Private Shared ReadOnly Property Path() As String Get Return "Control Panel\Desktop" End Get End Property ''' <summary> ''' Gibt den ermittelten Pfad des Bildschirmschoners ''' aus der Registrierdatenbank zurück. ''' </summary> Public Shared Function GetPath() As String ' Die Variable ScreensaverPath nimmt den ermittelten Pfad auf Dim ScreensaverPath As String = String.Empty ' Fehlerüberwachung einschalten Try ' Zugriff auf die Registrierdatenbank initialisieren ' und mit den benoetigten Parametern auswerten. Using hKey As RegistryKey = Registry.CurrentUser.OpenSubKey(Path) ScreensaverPath = DirectCast(hKey.GetValue(ValueName, ""), String) End Using Catch ex As Exception ' Eventuell auftretenden Fehler abfangen ' und Fehlermeldung ausgeben MessageBox.Show(ex.Message.ToString(), "Info") End Try ' Rückgabe des Pfades Return ScreensaverPath End Function End Class Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click ' Pfad ermitteln Dim Path As String = GetScreenSaverPath.GetPath() ' Statusmeldung der Pfadermittlung in der Titelzeile anzeigen Me.Text = IIf(Path.Length > 0, Path, "Pfad wurde nicht gefunden") ' Konnte kein Pfad ermittelt werden wird die Prozedur verlassen. If Path.Length = 0 Then Return Else ' Prüfen ob die angegebene Datei existiert. ' Ist dies der Fall... If IO.File.Exists(Path) Then ' ... wird der Bildschirmschoner gestartet. ' Dateinamen in der Titelzeile anzeigen Me.Text = "Screensave: " & IO.Path.GetFileName(Path) ' Initalisierung Dim psi As ProcessStartInfo = New ProcessStartInfo() With psi .ErrorDialog = True ' Pfadübergabe .FileName = Path End With ' Prozess starten Process.Start(psi) Else ' Konnte die Datei nicht gefunden werden, Fehler anzeigen MessageBox.Show("Datei wurde nicht gefunden...", "Info") End If End If End Sub End Class Dieser Tipp wurde bereits 13.046 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevZIP40 Pro DLL ![]() Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Tipp des Monats ![]() Matthias Kozlowski Umlaute konvertieren Ersetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |