【问题标题】:Refresh wallpaper in win7 via command linewin7通过命令行刷新壁纸
【发布时间】:2012-03-28 15:17:20
【问题描述】:

我想从命令行刷新 Windows 7 中的壁纸。 我正在通过reg.exe add设置壁纸。

rundll32.exe user32.dll,UpdatePerUserSystemParameters 不起作用(使用 1,True1,False

要求:

  1. 必须立即刷新壁纸(无需等待)
  2. 它必须从命令行运行
  3. 首选默认的 windows 7 命令行。编写 c++/VB/C# 程序是可以接受的,但不如默认的 win7 cli 解决方案。

【问题讨论】:

  • 你将不得不放松你的(相当奇怪的)要求。命令行脚本语言不够强大,无法单独完成。

标签: windows windows-7 wallpaper


【解决方案1】:

杀死探险家绝不是个好主意,试试这个:

RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters 1, True

【讨论】:

  • 无法在 Windows 7 上测试,但这是适用于 Win10 的解决方案。
【解决方案2】:

至少在 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

【讨论】:

    【解决方案3】:

    比我想象的要难。根据您的其他需求,您最终可以重新启动资源管理器。

    taskkill /IM explorer.exe /F
    explorer.exe
    

    如果你可以从命令行调用程序,你也可以看看How to force Windows desktop background to update or refresh

    【讨论】:

      【解决方案4】:

      reg add 使用 .bmp 文件效果更好

      这需要用户多次执行rundll32吗?次

      尝试简单的重命名转换 图片.jpeg -> 图片.bmp

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-02
        • 1970-01-01
        相关资源
        最近更新 更多