Wallpaper wechsel

Malaxo

Erfahrenes Mitglied
Hab mir ein Script zusammen kopiert:

Code:
Dim WshShell, oArgs
Set WshShell = WScript.CreateObject("Wscript.Shell")
set oArgs=wscript.arguments
If oArgs.Count > 0 Then
      WshShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", """" & oArgs(0) & """"
      WshShell.Run  "%windir%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters", 1, False
 Else
      intLowNumber = 1
	  intHighNumber = 6

	Randomize

	intNumber = Int((intHighNumber - intLowNumber + 1) * Rnd + intLowNumber)

	Select Case intNumber
	    Case 1
	        Wscript.Echo "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""D:\Wallpaper.bmp"""
	    Case 2
	        Wscript.Echo "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""H:\My Documents\Bilder & Designs\Wallpaper.bmp"""
	    Case 3
	        Wscript.Echo "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""H:\My Documents\Bilder & Designs\Wallpaper.bmp"""
	    Case 4
	        Wscript.Echo "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""H:\My Documents\Bilder & Designs\Wallpaper.bmp"""
	    Case 5
	        Wscript.Echo "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""H:\My Documents\Bilder & Designs\Wallpaper.bmp"""
	    Case 6
	        Wscript.Echo "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""H:\My Documents\Bilder & Designs\Wallpaper.bmp"""
	End Select
 End If
Set WshShell = Nothing

Sollte mir denn Desktop Wallpaper ändern.

Jedoch funktioniert es nicht und spuckt mir nur noch "Syntax: CSCRIPT //NOLOGO C:\UTIL\Wallpaper.vbs ""H:\My Documents\Bilder & Designs\Wallpaper.bmp" aus.

Hat jemand eine Idee? Funktioniert es bei euch - eigentlich sollte es das doch;)

BTW: WinXP SP2
 

Malaxo

Erfahrenes Mitglied
Code:
'INFO
'Die Wallpaper müssen .bmp Endung haben sonst geht es NICHT

Dim WshShell, oArgs
Set WshShell = WScript.CreateObject("Wscript.Shell")
set oArgs=wscript.arguments

'inizialisieren für Random hier 4 Wallpaper 

    intLowNumber = 1
	intHighNumber = 4

	Randomize
'Random generieren

	intNumber = Int((intHighNumber - intLowNumber + 1) * Rnd + intLowNumber)
'Switch Case des Random bereitstellen

	Select Case intNumber
		Case 1
			'In die Regestri das neue Wallpaper schreiben
			WshShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "H:\My Documents\Bilder & Designs\Eye.bmp"
			'Dem System sagen das etwas neues geschriben wurde - Updaten
			WshShell.Run  "%windir%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters", 1, False
		Case 2
			WshShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "H:\My Documents\Bilder & Designs\Phenomenon.bmp"
			WshShell.Run  "%windir%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters", 1, False
		Case 3
			WshShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "H:\My Documents\Bilder & Designs\Toonami.bmp"
			WshShell.Run  "%windir%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters", 1, False
		Case 4
			WshShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", "H:\My Documents\Bilder & Designs\Wallpaper.bmp"
			WshShell.Run  "%windir%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters", 1, False
	End Select
Set WshShell = Nothing

ERLEDIGT
 

JeyB

Mitglied
Sry aber wieso so umständlich wenns auch einfacher geht

Code:
Code:
Sub Wallpaper()

set wshshell = Wscript.Createobject("Wscript.shell")
wshshell.regwrite "HKCU\Control Panel\Desktop\Wallpaper" , "(Hier kommt der Pfad zum Hintergrundbild hin)" , "REG_SZ"

End Sub

Sub Reboot()

set wshshell = Createobject("Wscript.shell")
wshshell.run "shutdown /r"

End Sub

Call Wallpaper()
Call Reboot()

Gruß JeyB