Barret85 Geschrieben 30. Dezember 2008 Geschrieben 30. Dezember 2008 Hallo, Ich versuche gerade ein kleines Windows Service zu schreiben, dass mir in regelmäßigen Abständen mein Windows Wallpaper ändert.. aussehen tut das ganze etwa so: Imports System.Threading Imports System.ServiceProcess Public Class Service1 Inherits System.ServiceProcess.ServiceBase Dim t As Threading.Thread Protected Overrides Sub OnStart(ByVal args() As String) t = New Threading.Thread(AddressOf setWP) t.Start() End Sub Protected Overrides Sub OnStop() t.Abort() End Sub Sub setWP() Do Threading.Thread.Sleep(5000) SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, _ "C:\Daniel\Wallpapers\wp.bmp", SPIF_UPDATEINIFILE Or _ SPIF_SENDWININICHANGE) Loop End Sub Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Integer, ByVal uParam As Integer, ByVal pncMetrics As String, ByVal fuWinIni As Integer) As Integer Private Const SPI_SETDESKWALLPAPER = 20 Private Const SPIF_UPDATEINIFILE = &H1 Private Const SPIF_SENDWININICHANGE = &H2 End Class ... leider ändert sich aus irgendeinem Grund das Windows Wallpaper nicht... hab ich da Mist gebaut, oder lässt Windows so etwas aus Sicherheitsgründen nicht zu? (Windows XP, SP3) Danke für die Info mfg Roland Zitieren
Guybrush Threepwood Geschrieben 30. Dezember 2008 Geschrieben 30. Dezember 2008 Der Dienst weiß ja nicht für welchen Benutzer er den Desktop ändern soll. Evtl. hilft es wenn du inden Eigenschaften des Dienstes die kommunikation mit dem Desktop aktivierst. Zitieren
Barret85 Geschrieben 30. Dezember 2008 Autor Geschrieben 30. Dezember 2008 jaaa, das wars.. danke Zitieren
Barret85 Geschrieben 31. Dezember 2008 Autor Geschrieben 31. Dezember 2008 Ich würde das ganze jetzt noch gerne unter Vista zum laufen bringen.. leider passiert dort nichts.. muss man unter vista noch weitere einstellungen vornehmen im Service, damit das klappt? (zB.Parameter ob das Bild gestreckt werden soll oder so) oder liegt das an der evt. strengeren Vista Security? Zitieren
Bubble Geschrieben 31. Dezember 2008 Geschrieben 31. Dezember 2008 Schreibe lieber ein Programm, dass im Kontext des jeweiligen Benutzers läuft. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.