Windows Показать / скрыть скрытые файлы / папки - одним щелчком мыши - возможно ли это с помощью пакетного файла - или одним щелчком мыши?

Чтобы показать/скрыть скрытые файлы/папки в операционных системах Windows, таких как XP, Vista или Seven, нам нужно...

  1. перейти в проводник
  2. выберите меню инструментов
  3. вариант папки
  4. вкладка просмотра
  5. выберите переключатель, чтобы показать/скрыть скрытые файлы/филеры

Есть ли какой-либо командный / пакетный скрипт dos для этого? Я просто хочу сделать это одним щелчком мыши (будь то файл .bat или что-то еще).

Я искал и нашел ответ для файлов, пораженных вирусами - Windows пакетный скрипт для отображения файлов, скрытых вирусом, но он специфичен для одного введенного пользователем диска, а также для пораженных вирусом.

Я также нашел необходимые для этого изменения в реестре.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"Hidden"=dword:00000001
"HideFileExt"=dword:00000000

Я новичок в редактировании реестра. Так что я не знаю, как это сделать.
Итак, как мне сделать так, чтобы одним щелчком мыши я мог включать/отключать просмотр скрытых файлов и папок?


person Paritosh    schedule 29.08.2013    source источник
comment
Теоретически более надежным способом было бы использование SHGetSetSettings., но эта функция устарела и может перестать работать в любое время. Однако это лучше, чем изменение случайных ключей реестра, которые также могут постоянно меняться.   -  person Joey    schedule 29.08.2013


Ответы (4)


вы можете попробовать это:

@echo off &setlocal
set "regkey=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
for /f "tokens=2*" %%a in ('reg query %regkey% /v Hidden^|find "REG_DWORD"') do set /a Hidden=%%b
for /f "tokens=2*" %%a in ('reg query %regkey% /v ShowSuperHidden^|find "REG_DWORD"') do set /a SSuperHidden=%%b
if "%hidden%"=="1" (set /a hidden=2, SSuperHidden=0) else set /a hidden=1, SSuperHidden=1
reg add %regkey% /f /v Hidden /t REG_DWORD /d %hidden% >nul
reg add %regkey% /f /v ShowSuperHidden /t REG_DWORD /d %SSuperHidden% >nul
for /f "tokens=2*" %%a in ('reg query %regkey% /v Hidden^|find "REG_DWORD"') do set /a Hidden=%%b
<nul set /p="System files and folder are "
if "%hidden%"=="1" (echo NOT hidden.) else echo hidden.
endlocal
PAUSE 

Вы должны обновить проводник самостоятельно, нажав F5. Чтобы сделать это с помощью скрипта, вам нужно vbscript.

person Endoro    schedule 29.08.2013
comment
получая эту ошибку на консоли: ERROR: The system was unable to find the specified registry key or value. System files and folder are NOT hidden. Press any key to continue . . . PS: используя Windows 7 - person Paritosh; 29.08.2013
comment
Эй, это сработало, в первый раз, когда я запустил файл, я получил указанную выше ошибку, но потом все работает!! Спасибо!! - person Paritosh; 29.08.2013

Возможно, более удобный способ сделать это с минимальными усилиями — добавить пункт контекстного меню, чтобы сделать это:

  1. Создайте где-нибудь новый простой текстовый документ и назовите его «togglehidden.reg».
  2. Откройте его блокнотом и вставьте следующее:

    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\Folder\shell\Windows.ShowHiddenFiles]
    "CommandStateSync"=""
    "Description"="@shell32.dll,-37573"
    "ExplorerCommandHandler"="{f7300245-1f4b-41ba-8948-6fd392064494}"
    "MUIVerb"="@shell32.dll,-37572"
    
    
    [HKEY_CLASSES_ROOT\Directory\Background\shell\Windows.ShowHiddenFiles]
    "CommandStateSync"=""
    "Description"="@shell32.dll,-37573"
    "ExplorerCommandHandler"="{f7300245-1f4b-41ba-8948-6fd392064494}"
    "MUIVerb"="@shell32.dll,-37572"
    
  3. сохранить и закрыть.

  4. дважды щелкните новый reg-файл, примите приглашение установить его, и все готово.

Вот что вы должны получить: Скрытый переключатель

Источник: https://winaero.com/blog/hidden-items-context-menu-windows-10/

person MetalOath    schedule 09.01.2018

Этот скрипт отлично сработал для меня:

Hidden = "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Hidden"
SHidden = "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ShowSuperHidden"

Set Sh = WScript.CreateObject("WScript.Shell")
St = Sh.RegRead(Hidden)

If St = 2 Then
    Sh.RegWrite Hidden, 1, "REG_DWORD"
    Sh.RegWrite SHidden, 1, "REG_DWORD"
Else
    Sh.RegWrite Hidden, 2, "REG_DWORD"
    Sh.RegWrite SHidden, 0, "REG_DWORD"
End If

Sh.SendKeys("{F5}")
person user3586495    schedule 29.04.2014

  1. победа + р
  2. написать команду
  3. место на маршруте
  4. написать attrib -h -r -s /s/d d:\*. *
    и изменить
person Godie007    schedule 06.04.2017