Batch file 使用批处理刷新桌面

Batch file 使用批处理刷新桌面,batch-file,refresh,desktop,Batch File,Refresh,Desktop,我需要刷新桌面ussing批处理这可能吗 我发现下面的VBscript可以刷新包含窗口,但是,桌面需要重新格式化,而不是包含窗口 不管怎么说 Set WSHShell = CreateObject("WScript.Shell") WshShell.SendKeys "{F5}" thx-您可以尝试以下方法: rundll32 user32.dll,UpdatePerUserSystemParameters 或者这个: ie4uinit.exe -ClearIconCache 但是,

我需要刷新桌面ussing批处理这可能吗

我发现下面的VBscript可以刷新包含窗口,但是,桌面需要重新格式化,而不是包含窗口

不管怎么说

Set WSHShell = CreateObject("WScript.Shell")

WshShell.SendKeys "{F5}"
thx-

您可以尝试以下方法:

rundll32 user32.dll,UpdatePerUserSystemParameters  
或者这个:

ie4uinit.exe -ClearIconCache

但是,它依赖于版本

它必须是严格的本机命令吗

如果可以使用,则可以使用以下脚本:

WinActivate("Program Manager") 
Send("{F5}")
编辑 这适用于XP。我还没有在Vista或7上试用过它。

试试这个

     @echo off
     taskkill /fi "imagename eq explorer.exe" /f
     CD /d %userprofile%\AppData\Local
     DEL IconCache.db /a
     START explorer.exe

在Win7上,这可以通过从“shell32.dll”调用函数“”来完成。 问题是,AFAIK无法使用“rundll32.exe”成功加载此函数,因此请改用能够加载此函数的程序


编译的EXE 使用(可下载32/64位图像)

AHK(自动热键) 奥托伊特
好的,取决于版本?我们有几个版本,像vista、98、xp和ME,虽然都是家用电脑(没有一个运行64位)。在xp上它可以工作(至少在我的电脑中是如此)。。。剩下的我没办法测试。试试看:)。请阅读我在你的问题下的评论。嘎!这就是为什么在Windows 3去世15年后,Windows被迫将桌面窗口命名为“程序管理器”的原因。@Joey,这有点牵强。有人在Windows 8.1上尝试过吗?CLI刷新工具似乎没有任何作用。sepago站点上指向刷新工具的链接已失效。失效:包括WayBackMachine:页面也不存在。也不在archive.is中。它似乎是一个类似的工具。也许它会起作用。另外,任何人都可以轻松地将AHK脚本编译成exe。
“imagename eq explorer.exe”
更正为
“imagename eq explorer.exe”
(注意
DllCall("Shell32\SHChangeNotify", UInt, 0x08000000, UInt, 0, UIntP, 0, UIntP, 0)
DllCall("shell32.dll", "none", "SHChangeNotify", "long", 0x8000000, "uint", BitOR(0x0, 0x1000), "ptr", 0, "ptr", 0)
@echo off
setlocal EnableExtensions DisableDelayedExpansion
ie4uinit.exe -show
endlocal