我正在运行预安装的Windows 7 Home Premium(北欧语,对我来说是芬兰语)。我的C:\
文件夹中当然有该Users
文件夹,但是它的名称是芬兰语。
单击资源管理器中的文件夹名称将显示真实名称。
这也是其他应用程序(例如Web浏览器或7-Zip)显示的内容。
这不限于C:\Users
但也适用于Start Menu
等。
我想做的是在资源管理器中关闭此本地化。有没有办法做到这一点?
我正在运行预安装的Windows 7 Home Premium(北欧语,对我来说是芬兰语)。我的C:\
文件夹中当然有该Users
文件夹,但是它的名称是芬兰语。
单击资源管理器中的文件夹名称将显示真实名称。
这也是其他应用程序(例如Web浏览器或7-Zip)显示的内容。
这不限于C:\Users
但也适用于Start Menu
等。
我想做的是在资源管理器中关闭此本地化。有没有办法做到这一点?
Answers:
文件夹通常以标准文件夹图标显示。该
Desktop.ini
文件的常用用法是将自定义图标或缩略图图像分配给文件夹。您也可以Desktop.ini
用来创建一个信息提示,该提示显示有关文件夹的信息并控制文件夹行为的某些方面,例如为文件夹或文件夹中的项目指定本地化名称。在外壳程序显示目录名称之前,外壳程序将查找
Desktop.ini
文件。如果找到一个,它将显示从其LocalizedReourceName
获取的最终用户的重定向名称。
这是desktop.ini
存储在C:\Users
文件夹中的文件的默认内容:
[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21813
Windows资源管理器似乎没有提供任何记录的方式来忽略文件夹本地化,但是删除该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
;
?