Sadece John'un senaryosuna küçük baharatlar eklemeye çalışıyorum. Senaryoyu günün saatine göre her dakika duvar kağıdını değiştirmeye zorlamaya çalışıyorum. Örneğin, 5.00 ile 8.59 arasında, sabah temalı duvar kağıtlarını değiştirir; 9,00'den 13,59'a kadar, gün ortası temalı duvar kağıtlarını değiştirir; ve diğerleri. Bu komut dosyasındaki her tema 4 BMP görüntüsü içerir. Senaryoda yer alan beş tema olduğundan (sabah, öğlen, öğleden sonra, akşam ve gece), bu senaryonun çalışması için gereken 20 resim olacaktır.
'creating procedure that changes wallpaper every minute
Sub ChangeWallpaperPerMinute ()
Set obshell = WScript.CreateObject("Wscript.Shell")
CurrentHour = Hour(Now)
'determining the number of images for every time of the day-based theme (set the 'maximum' value according to the number of images for every theme)
maximum=4
minimum=1
'randomizing the images to be changed
Randomize
num = Int((maximum-minimum+1)*Rnd+minimum)
If CurrentHour >= 5 And CurrentHour <= 8 Then
wallpaper = "morning" & num & ".bmp"
ElseIf CurrentHour >= 9 And CurrentHour <= 13 Then
wallpaper = "midday" & num & ".bmp"
ElseIf CurrentHour >= 14 And CurrentHour <= 16 Then
wallpaper = "afternoon" & num & ".bmp"
ElseIf CurrentHour >= 17 And CurrentHour <= 20 Then
wallpaper = "evening" & num & ".bmp"
ElseIf CurrentHour >= 21 And CurrentHour <= 23 Then
wallpaper = "night" & num & ".bmp"
ElseIf CurrentHour >= 0 And CurrentHour <= 4 Then
wallpaper = "night" & num & ".bmp"
Else
WScript.Quit(0)
End If
obshell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper",wallpaper
obshell.Run "%windir%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters",1,False
Set obshell = Nothing
End Sub
'end of procedure creation'
'calling procedure to initiate script's action
ChangeWallpaperPerMinute
'repeating the calling of procedure
do
WScript.sleep(60 * 1000)
'60 * 1000 means sixty seconds. If the shifting of wallpapers is expected to occur once every ten seconds, change to 10 * 1000
'calling procedure
ChangeWallpaperPerMinute
Loop
Bu betiğin çalışmasını sağlamak için, komut dosyasının kendisine ek olarak, 20 BMP görüntüsü de gerekir. Bu görüntülerden dördü belirtilen terminolojiye göre adlandırılmalıdır; bu, örneğin morning1.bmp, morning2.bmp, morning3.bmp ve morning4.bmp'dir. Aynı terminoloji, 4 öğlen resmi, 4 öğleden sonra resmi, 4 akşam görüntüsü ve 4 gece görüntüsünün isimlendirilmesi için de geçerlidir. VBS dosyasını 20 resim dosyasıyla birlikte bir klasöre yerleştirin. Bu komut dosyası prosedürünü belirtilen aralıklarla tekrar tekrar çağırdığından, zamanlanmış görevleri kullandığınızda, bu komut dosyasını yalnızca sistem oturum açışında etkinleştirdiğinizden emin olun. Bu betiği devre dışı bırakmak için görev yöneticisini kullanarak wscript.exe dosyasını öldürmeniz yeterlidir.