Board logo

标题: [系统相关] 求解决:执行BAT后,不能自动刷新 [打印本页]

作者: 7895927    时间: 2018-12-18 09:36     标题: 求解决:执行BAT后,不能自动刷新

显示/隐藏  文件名后缀的BAT
  1. @echo off
  2. set v=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt
  3. for /f "tokens=2,*" %%a in ('reg query %v%') do set/a a=!%%b
  4. reg add %v% /t REG_DWORD /d %a% /f
复制代码
双击这个BAT后,可以显示/隐藏文件名的后缀,但是每次使用后,必须要按F5刷新一下,才显示后缀或隐藏后缀,BAT自身不会自动刷新,求解决方法。
不要重启EXEPLORER的方法。
作者: xczxczxcz    时间: 2018-12-18 21:30

http://www.bathome.net/thread-17376-1-1.html
作者: tz_being    时间: 2018-12-20 18:24

本帖最后由 tz_being 于 2018-12-20 18:25 编辑

最终大   法,模拟按F5刷新,我就是一直这样干的:
  1. echo Set ws=CreateObject("Wscript.Shell")>Flash.vbs
  2. echo ws.SendKeys "{F5}+{F10}e">>Flash.vbs
  3. echo set fso=createobject("scripting.filesystemobject")>>Flash.vbs
  4. echo fso.deletefile WScript.scriptFullName>>Flash.vbs
  5. start Flash.vbs
复制代码

作者: 7895927    时间: 2018-12-21 09:04

回复 3# tz_being


    这个是什么,怎么用?
作者: Batcher    时间: 2018-12-21 09:25

回复 4# 7895927


    代码保存为 test.bat 执行试试
作者: tz_being    时间: 2018-12-21 09:27

    这个是什么,怎么用?


加在你的批处理代码后面啊:
  1. @echo off
  2. set v=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt
  3. for /f "tokens=2,*" %%a in ('reg query %v%') do set/a a=!%%b
  4. reg add %v% /t REG_DWORD /d %a% /f
  5. echo Set ws=CreateObject("Wscript.Shell")>Flash.vbs
  6. echo ws.SendKeys "{F5}+{F10}e">>Flash.vbs
  7. echo set fso=createobject("scripting.filesystemobject")>>Flash.vbs
  8. echo fso.deletefile WScript.scriptFullName>>Flash.vbs
  9. start Flash.vbs
复制代码

作者: 7895927    时间: 2018-12-22 14:39

回复 6# tz_being


    我测试了一下,这个是模仿手动F5是吧,效果是有了,但是只刷新BAT所在的文件夹,其它文件夹和桌面都没有刷新。
我想要的效果是和手动“文件夹选项”里面调节那样的效果,对所有文件夹、桌面都刷新。不知能不能实现?
作者: tz_being    时间: 2018-12-22 15:42

回复 7# 7895927


    别找了,找不到的,除了结束explorer.exe进程外没别的办法了。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2