有脚本:REFRESH桌面和资源管理器(xp pro,到.vbs文件)

时间:2013-05-24 19:42:13

标签: refresh adsutil.vbs

嗨,我是excel vb的新手。使用.vbs文件尝试,可能需要一个工作示例谢谢。 (试图让行距在这里工作..)

我有一个.vbs文件,我直接粘贴到桌面,切换设置隐藏文件扩展名,确实有效。它不会刷新桌面和资源管理器(在第一次单击该文件时),就像手动设置它一样(如下所示)。我需要刷新部分的帮助。

我有一个.vbs文件的例子:

手动设置:(隐藏扩展程序:让您免费刷新桌面和资源管理器)

资源管理器,工具,选项,视图,复选框:隐藏已知文件类型的扩展名(该项目会自动更新桌面和Windows资源管理器)。

我想将其纳入我的脚本中。相同的基本想法:我的脚本到文本/ .vbs文件,所以我可以点击我的桌面(作为一个切换,即1点击打开它,下一次点击将其关闭;得到它/它工作),我需要添加到它以生成与两者相同的刷新,或同等的刷新:desktop&资源管理器)。

将以下内容粘贴到文本文件(或同等结果):

FileExt = "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt"

Set Sh = WScript.CreateObject("WScript.Shell")

St = Sh.RegRead(FileExt)

If St = 1 Then

Sh.RegWrite FileExt, 0, "REG_DWORD"

Else

Sh.RegWrite FileExt, 1, "REG_DWORD"

End If

Sh.SendKeys("{F5}") 

将文本文件重命名为:HIDE EXT.vbs而不是.txt,并将其粘贴到桌面。

需要什么:

我需要添加的内容是刷新桌面和放大器。资源管理器窗口。与手动设置时相同。这里的F5似乎没有第一次工作。在第二次点击文件时,它可以将视图发送到视图“状态”实际所在的视图的对面。

2 个答案:

答案 0 :(得分:0)

希望这可以提供帮助:

而不是

Sh.SendKeys("{F5}") 

尝试使用:

Sh.run "cmd.exe /c taskkill /f /im explorer.exe && start explorer.exe"

它对我很好。 (我正在使用XP和Windows Server 2003)

我发现F5键不会像桌面一样工作,右键单击,然后单击刷新。 我在这里引用了我的代码:http://en.kioskea.net/faq/7789-batch-script-to-automatically-reload-explorer-exe

答案 1 :(得分:0)

当我设法通过这段代码发现问题时,我感到非常高兴。

很长一段时间后,我意识到有必要在调用F5之前在脚本中添加一个“ sleep”功能。这样一来,您就不会有问题,点击就会起作用。

OBS1:即使如此,我也没有找到更新桌面的解决方案。该脚本仅在活动窗口中有效。如果在Desktopbackground上启动它,它将更新所有文件夹和文件,否则只会更新打开的文件夹。

OBS2:睡眠值示例-> 1000 = 1s 这是代码:

FileExt = "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt"

Set Sh = WScript.CreateObject("WScript.Shell")

St = Sh.RegRead(FileExt)

If St = 1 Then

Sh.RegWrite FileExt, 0, "REG_DWORD"

wscript.sleep 500

Else

Sh.RegWrite FileExt, 1, "REG_DWORD"

wscript.sleep 500

End If

Sh.SendKeys("{F5}") 

如果有人知道我如何将F5发送到桌面,我将不胜感激。谢谢