2012-03-28 126 views
1

我想從命令行刷新Windows 7中的壁紙。 我正在設置壁紙通過reg.exe add通過命令行刷新win7中的壁紙

rundll32.exe user32.dll,UpdatePerUserSystemParameters不(與1,True1,False

要求工作:

  1. 必須立即刷新壁紙(無需等待)
  2. 必須從命令行
  3. 默認的Windows上運行7命令行是首選。編寫一個C++/VB/C#程序是可以接受的,但不如默認的win7 cli解決方案。
+1

你將不得不放鬆你的(相當奇怪的)要求。命令行腳本語言不夠強大,無法自行完成。 – 2012-03-30 13:48:03

回答

1

殺人Explorer是不是一個好主意,試試這個:

RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters 1, True 
+0

無法在Windows 7上測試,但這是在Win10上運行的解決方案。 – dornadigital 2017-08-29 15:18:19

0

至少在Windows 7 64位,我發現rundll32.exe命令工作,但不是每次。我沒有爲什麼理論,但我的解決方法是一個.cmd文件,它調用了很多次。這不是優雅的,但它每次都有效。在我們的環境中,我們以異步和不可見的方式在後臺啓動它,所以它運行約80秒的事實並不重要。

:: Do your stuff to apply the background .reg settings first 
:: Then run UpdatePerUserSystemParameters many times 
RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters 1, True 
timeout 1 
RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters 1, True 
timeout 1 
:: Etc. I have about 80 of them