显示隐藏隐藏文件刷新资源管理器 Windows.ahk

显示隐藏隐藏文件刷新资源管理器 Windows.ahk

在 Windows 11 中,仅使用键盘来快速隐藏或显示文件资源管理器中的隐藏文件的方法是什么?

Windows 10 通过功能区键盘快捷键提供了此功能,但 Windows 11 中功能区已消失。新工具栏似乎几乎没有键盘支持,但希望有一个解决方法。使用 AutoHotkey 等基于实用程序的解决方案就好了。

答案1

这在 Windows 10 中使用自动热键

将文件另存为:

显示隐藏隐藏文件刷新资源管理器 Windows.ahk

#SingleInstance Force

#IfWinActive ahk_class CabinetWClass ahk_exe explorer.exe

^h::
If (!A_IsAdmin)  ; IF NOT Admin
{
    Run, *RunAs "%A_ScriptFullPath%"  ; Run script as admin
    ExitApp  ; Exit the current instance running without admin privileges
}
RegRead, hidden, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Hidden  ; Get If Files Hidden Or Shown
If hidden contains 1  ; IF Files NOT Hidden
{
    RegWrite, REG_DWORD, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Hidden, 2  ; Hide Hidden Files
}
Else  ; ELSE Files Hidden
{
    RegWrite, REG_DWORD, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Hidden, 1  ; Show Hidden Files
}
WinGet, windows, List, ahk_exe explorer.exe  ; Get List Explorer Windows
Loop, %windows%
{
    id := windows%A_Index%  ; id
    WinGetTitle, title, ahk_id %id%  ; title
    WinGetClass, class, ahk_id %id%  ; class
    WinGet, exe, ProcessName, ahk_id %id%  ; exe
    ControlSend, DirectUIHWND2, {F5}, %title% ahk_class %class% ahk_exe %exe%  ; Refresh All Explorer Windows
}
Return

#IfWinActive
  1. #IfWinActive ahk_class CabinetWClass ahk_exe explorer.exe确保仅当资源管理器窗口处于活动状态时才会运行脚本。
  2. ^h::是触发代码的 Ctrl+H 热键。您可以将其设置为任何您喜欢的值。

该脚本需要以管理员身份运行,以便它可以写入注册表。

  1. A_IsAdmin是一个内置变量,如果当前用户具有管理员权限则返回 1,否则返回 0。
  2. 它首先检查用户是否不是行政 (!A_IsAdmin)。
  3. 如果用户不是管理员,它将运行相同的脚本,并使用内置变量获取完整路径"%A_ScriptFullPath%"*RunAs参数以管理员身份运行脚本。
  4. ExitApp如果没有管理员权限则退出当前脚本。
  5. Run命令以管理员权限再次运行脚本,现在脚本具有管理员权限,它跳过条件IF并执行下面的代码。
  6. RegRead读取注册表项,显示隐藏文件是隐藏还是显示。如果值为,1则隐藏隐藏文件,否则显示隐藏文件。
  7. WinGet, windows获取所有资源管理器窗口的列表。
  8. Loop循环遍历所有资源管理器窗口,获取每个窗口的标题、类和进程,并ControlSend, DirectUIHWND2, {F5}刷新所有资源管理器窗口以反映更改(显示或隐藏文件)。

相关内容