Hi,
A solution that works on Windows 7 64 Ultimate French with an Every Entry Event and Command like:
"C:\Temp\Dexpot\NewChangeTheme.vbs" "%UserProfile%\AppData\Local\Microsoft\Windows\Themes\Dark Skie\Dark Skie.theme"
Were "NewChangeTheme.vbs" contains the following code and is taking the name of the theme as an argument:
-----------------------------------------------
' Based and adapted on code
' found at this thread:
'
http://www.sevenforums.com/themes-style ... theme.html' Do remark the French name of Desktop Properties, this needs to be adapted for every language
' also, the 3000 for the Sleep is a minimal value that works on an Alienware laptop MX18R2 with an i7 and dual Radeon
' you may need to adjust upward for a slower computer. If not, the window will stay open
Dim var1
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "rundll32.exe %SystemRoot%\system32\shell32.dll,Control_RunDLL %SystemRoot%\system32\desk.cpl desk,@Themes /Action:OpenTheme /file:""" & WScript.Arguments(0) & """"
set Arg = Nothing
Wscript.Sleep 3000
WshShell.AppActivate("Panneau de configuration") '("Desktop Properties")
WshShell.Sendkeys "%{F4}"
-------------------------------------------
Thanks to WindowsStar and jasonpatrick of
http://www.sevenformus.com !
PS: don't change window until the cycle is complete or it won't work !
PS2: I tested it on a Every Entry event, it fires on every change of desktop... Not perfect but it works !
Next, testing on a First Entry !
Yves