将用户配置文件从 C:\Users 移动到另一个分区(即 D:\Users)后,我在 Internet Explorer 10 和 11 中遇到了一个重大问题。
我遵循了这个(德语)教程http://windows-hilfe-forum.de/f16/benutzerordner-komplett-auf-andere-partition-verschieben-1076/乍一看,一切都很顺利。
但是,Internet Explorer 及其“保护模式”功能(Internet 选项/安全)仍然存在问题:每当我尝试下载 (*.exe) 文件时,它都会将扩展名从 foo.exe 重命名为 foo_exe。这真的很烦人。
我在 superuser.com 上看到过这篇文章,但这并没有帮助我解决问题。IE10下载文件由.exe变成_exe
到目前为止,我在谷歌上搜索和阅读的内容让我相信,启用“保护模式”的 Internet Explorer 会将所有具有潜在恶意扩展名(例如 *.exe)的文件下载到一个特殊的虚拟化文件夹中,并重命名扩展名。只有在用户批准后,它才会将这些文件移动到正常的下载文件夹并恢复正确的扩展名。--> 在将用户配置文件移动到另一个位置后,IE 似乎无法处理这些虚拟化文件夹。因此,这一定是临时 Internet 文件和相应虚拟化文件夹的路径存在问题。
有人知道如何永久解决这个问题,以及这些怪异文件夹的路径存储和定义在哪里?(我不想关闭保护模式,即使这是一个短期补救措施)
在新的配置文件位置创建新的用户配置文件时不会出现此问题。只有当用户配置文件位于旧的 c:\users 位置,然后被移动到新的配置文件文件夹时,才会出现此问题。
答案1
遇到了完全相同的问题。我发现发生这种情况的原因是,当您将用户配置文件移动到新驱动器时,移动的文件夹都具有中等完整性级别 (IL),而 IE 保护模式 (IEPM) 以低 IL 运行(因此 IEPM 被拒绝访问处理下载所需的文件夹)。解决方案是手动将 IEPM 使用的文件夹的完整性级别更改为低。请按照以下步骤修复此问题:
- 以管理员身份打开命令提示符
- 转到 (New_Profile_Location)\AppData\Local\Microsoft\Windows\Temporary Internet Files\Virtualized
- 观察是否存在“C”文件夹及其子文件夹
- 我们需要为新的驱动器号(包含用户配置文件的驱动器号)重新创建相同的结构。在我的情况下,它是驱动器 G:,因此我运行了以下命令:
- robocopy .\C .\G /E /XO /COPYALL (将 G 替换为您的驱动器号)
- 现在我们需要将 G 文件夹及其所有子文件夹的 IL 设置为低(再次将 G 替换为您的驱动器号):
- icacls G /设置完整性级别 L /T
- 现在我们需要对其他文件夹进行同样的更改。在命令提示符下向上一级(您现在应该位于 (New_Profile_Location)\AppData\Local\Microsoft\Windows\Temporary Internet Files)
- 运行 icacls Low /setintegritylevel L /T
- 现在转到 (New_Profile_Location)\AppData\Local\Microsoft\Windows\History
- 运行 icacls Low /setintegritylevel L /T
- 最后转到 (New_Profile_Location)\AppData\Roaming\Microsoft\Windows\Cookies
- 运行 icacls Low /setintegritylevel L /T
这应该可以解决问题。