如何编写自动热键脚本来切换显示隐藏文件和文件夹设置?

如何编写自动热键脚本来切换显示隐藏文件和文件夹设置?

我想使用热键来切换“显示隐藏文件和文件夹”设置。我想在 WindowsXp 和 Windows7 上使用它。

以下是我目前得到的信息:

#h::
RegRead, Showall_Status, HKEY_LOCAL_MACHINE, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL, CheckedValue, 
If Showall_Status = 0
RegWrite, REG_DWORD, HKEY_LOCAL_MACHINE, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL, CheckedValue, 1 
Else
RegWrite, REG_DWORD, HKEY_LOCAL_MACHINE, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL, CheckedValue, 0
Return

问题是当我运行脚本时它什么都不做。不知道我错过了什么。

答案1

好的,问题出在 regkey 上,这个可以工作。

;------------------------------------------------------------------------
; Show hidden folders and files in Windows XP
;------------------------------------------------------------------------
; User Key: [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
; Value Name: Hidden
; Data Type: REG_DWORD (DWORD Value)
; Value Data: (1 = show hidden, 2 = do not show)

    #h::

        RegRead, ShowHidden_Status, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Hidden
        if ShowHidden_Status = 2 
        RegWrite, REG_DWORD, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Hidden, 1
        Else
        RegWrite, REG_DWORD, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced, Hidden, 2
        WinGetClass, CabinetWClass
        PostMessage, 0x111, 28931,,, A
        Return

答案2

我没有足够的积分来回复,因此我将其作为另一个答案发布......

在 win7 中,使用上述方法无法刷新 explorer PostMessage。因此,您需要让这两种方法在 XP 和 win7 中都能正常工作。

http://www.autohotkey.com/forum/topic1204.html

PostMessage, 0x111, 28931,,, A
PostMessage, 0x111, 41504,,, A

相关内容