Можете ли вы заставить Windows 7 не локализовать имена папок?

13

Я использую предустановленную Windows 7 Home Premium (Nordic, по-фински для меня). Моя C:\папка, конечно, имеет Usersпапку, но ее имя на финском языке.

Имя папки

При нажатии на имя папки в проводнике отображается настоящее имя.

Настоящее имя папки

Это также показано другими приложениями, такими как веб-браузер или 7-Zip.

Это не ограничивается, C:\Usersно также относится и Start Menuт. Д.

Я хотел бы отключить эту локализацию в Проводнике. Есть ли способ сделать это?

PurkkaKoodari
источник

Ответы:

16

Настройка папки

Папки обычно отображаются со стандартным значком папки. Распространенным использованием Desktop.iniфайла является назначение пользовательского значка или миниатюрного изображения для папки. Вы также можете использовать Desktop.iniдля создания всплывающей подсказки, которая отображает информацию о папке и управляет некоторыми аспектами поведения папки, такими как указание локализованных имен для папки или элементов в папке.

Источник: Как настроить папки с Desktop.ini

Прежде чем оболочка отобразит имя каталога, оболочка ищет Desktop.iniфайл. Если он находит его, он отображает перенаправленное имя, полученное от LocalizedReourceNameконечного пользователя.

Источник: Настройка папок с Desktop.ini (Windows CE 5.0)

Вот содержимое по умолчанию desktop.iniфайла, хранящегося в C:\Usersпапке:

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21813

Отключение локализованных имен

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

Пакетная автоматизация

Ниже представлен простой пакетный скрипт, который может сделать это для вас, рекурсивно сканируя каждую папку на системном диске. Обязательно запустите его от имени администратора.

@echo off
setlocal enabledelayedexpansion

pushd "%systemdrive%\"

for /f "delims=" %%G in ('dir /a /b /s desktop.ini') do (
find /i "LocalizedResourceName=" "%%~G" >nul
if !errorlevel! == 0 (
takeown /f "%%~G" /a >nul
icacls "%%~G" /grant:r *S-1-5-32-544:F /q >nul
attrib -h -s "%%~G"
type "%%~G" | findstr /i /v /c:"LocalizedResourceName=" > "%%~G.new"
copy "%%~G" "%%~nxG.bak" >nul 2>&1
del /a "%%~G"
ren "%%~G.new" "%%~nxG"
attrib +h +s "%%~G.bak"
attrib +h +s "%%~G"
))

popd
pause & exit /b
and31415
источник
2
спасибо, сэр, вы действительно спасли мой день, я не выдержал несоответствия названия моих папок
Kiwy
3
Не лучше ли было бы прокомментировать строку ;?
SamB
2

Перевод контролируется скрытым файлом, который называется desktop.ini. Откройте параметры Windows Explorer, убедитесь, что вы активировали опцию, чтобы показать скрытые и системные файлы, теперь перейдите в папки, где вы не хотите переводить, и удалите INI-файл.

magicandre1981
источник