Wartezeit Bildschirmschoner

Ich möchte per VB6-Programm die Wartezeit des Bildschirmschoners einstellen, also die Zeit, die vergehen soll, bis der Bildschirmschoner aktiv wird. Zielsystem ist ein Rechner mit Windows NT.

Wer kann mir helfen ?

Mitsch

Dazu wirst du wohl leider um Registry und API nicht herumkommen.
Und wie immer bei der Arbeit mit der Registry ist der ganze Spass mit Vorsicht zu geniessen, da man bei falscher Anwendung eine Menge kaputt machen kann. Es empfielt sich zumindest vorher die Registry zu sichern und danach mit dem Registry-Editor nachzuschauen ob die Änderung auch wirklich das war was du wolltest.

Wenn du immer noch weitermachen willst, dann schreibe das alles in ein Modul:

Option Explicit
Declare Function RegSetValueEx Lib „advapi32.dll“ Alias „RegSetValueExA“ (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Declare Function RegCreateKey Lib „advapi32.dll“ Alias „RegCreateKeyA“ (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Declare Function RegCloseKey Lib „advapi32.dll“ (ByVal hKey As Long) As Long
Const REG_SZ = 1
Const HKEY_CURRENT_USER = &H80000001

Sub SSaveTimeOut(Wert As String)
Dim Ret As Long
RegCreateKey &H80000001, „Control Panel\Desktop“, Ret
RegSetValueEx Ret, „ScreenSaveTimeOut“, 0, 1, ByVal Wert, Len(Wert)
RegCloseKey Ret
End Sub

Rufe die Funktion auf und beachte dabei, dass der Wert als Zeichenfolge angegeben werden muss, also z.B. SSaveTimeOut „3000“.

Diese Funktion sollte lediglich den Wert in HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveTimeOut ändern, aber die Anwendung erfolgt natürlich auf eigene Gefahr.

Gruß
Daniel

Geht einfacher mit Registry Manipulation Classes (RegObj.dll) - ist sogar gratis!