![为什么在 Windows 7 中以管理员身份打开 Notepad++ 时不显示 system32\drivers\etc 文件夹](https://linux22.com/image/1369899/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%9C%A8%20Windows%207%20%E4%B8%AD%E4%BB%A5%E7%AE%A1%E7%90%86%E5%91%98%E8%BA%AB%E4%BB%BD%E6%89%93%E5%BC%80%20Notepad%2B%2B%20%E6%97%B6%E4%B8%8D%E6%98%BE%E7%A4%BA%20system32%5Cdrivers%5Cetc%20%E6%96%87%E4%BB%B6%E5%A4%B9.png)
我以具有管理员权限的用户身份登录了运行 Windows 7 x64 Ultimate 的独立 PC(不属于域),并且我已“以管理员身份”打开了 Notepad++,但我看不到 system32\drivers 下的 \etc 文件夹。我想在那里编辑 hosts 文件。在文件浏览器中,我可以看到 \etc 文件夹存在,以及 Notepad++ 打开文件对话框中未显示的许多其他文件夹。这是权限问题还是 Notepad++ 问题?
答案1
问题是文件夹重定向, 如果 32 位程序尝试访问 System32 文件夹,它将被不可见地重定向到该%windir%\SysWOW64
目录,这是为了实现 32/64 位应用程序兼容性。
System32 中的所有文件都是 64 位的,但是如果程序编写错误,它们可能在寻找 DLL 时将 System32 硬编码到程序中。为了防止因编写错误的程序而导致随机程序崩溃,Microsoft 会进行重定向。
现在,如果你看一下我发布在顶部的链接,%windir%\system32\drivers\etc
它不受此重定向的影响,这就是为什么如果你直接去那里它可以正常工作,但如果你在那里,%windir%\system32\drivers
你实际上正在查看%windir%\SysWoW64\drivers
不包含etc
子文件夹的文件夹。
有一些解决方法
- 您需要直接输入
%windir%\system32\drivers\etc
- 导航到“隐藏”文件夹
%windir%\sysnative
,它将带您进入“真实”System32
文件夹,然后您可以像平常一样进入目录树。 - 当您手动
%windir%\System32\drivers
单击地址栏并添加到\etc
文件夹路径时(这实际上只是执行方法#1的另一种方法)
答案2
我猜是 x32 的问题。x32 Notepad++ 可能无法在 x64 操作系统上看到“etc”文件夹。目前尚无 x64 版本。尝试 NPP 论坛以寻求一些解决方法。
答案3
我已经解锁管理员帐户,具体操作如下:http://www.howtogeek.com/howto/windows-vista/enable-the-hidden-administrator-account-on-windows-vista/
现在我可以看到它
答案4
我遇到了完全相同的问题,发现这里的解释很有帮助,但答案比他们建议的还要简单 - 您不必输入整个路径名或执行任何文件夹重定向。当您以管理员身份运行 Notepad++ 并使用文件、打开时,您可以导航到驱动程序文件夹,只需添加到文件名对话框中:/etc/hosts(或您想要打开的任何其他文件) - 它会立即打开。