免责声明
我已经发布这个问题在超级用户上没有任何回应,但我在域上工作,并想以管理员身份更改多台计算机,所以我相信这也是这里的主题。
问题
在 Windows 7 和 Outlook 2013 上,无论将哪个程序设置为默认程序,保存为 .xml 的附件似乎都会在 Internet Explorer 中打开。在“控制面板”的“默认程序”下,我的用户将 .xml 与他们选择的程序关联起来(UAD 阅读器(如果重要的话。)如果用户桌面上有 .xml 文件,并且他们双击它,它会按预期在默认程序中打开。但是当同一个 .xml 文件是 Outlook 中的附件时,它总是在 Internet Explorer 中打开。阅读后这篇微软文章,这似乎不是一个 Outlook 安全设置,因为 Outlook 允许文件作为附件打开,只是不能在预期的程序中打开。
有办法改变这种情况吗?我不相信有任何内置的 GPO 可以解决这个问题。也许有一个注册表值可以强制它在我想要的程序中打开?我正在寻找一种不需要安装第三方软件并且可以通过组策略或登录脚本处理的解决方案。
更新: 如果我右击并选择“打开方式...”并将 Notepad++ 设置为默认程序,Outlook 就会在 Notepad++ 中打开 XML 文件。如果我将其重新设置为 UAD Reader,Outlook 就会启动 IE 来打开 .xml 文件。我不确定这是 UAD Reader 的问题,还是我遇到了奇怪的 Windows 安全功能,或者是其他问题。
答案1
在对更改前后的整个注册表进行差异分析后,我发现将 Notepad++ 设置为"Progid"="Applications\\notepad++.exe"
中的默认设置[HKEY_USERS\S-1-5-21-73586283-1229272821-725345543-2231\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xml\UserChoice]
。以 UAD Reader 作为默认设置,"Progid"
在同一位置设置为"xmlfile"
。
为了修复这个问题,我设置了"Progid"="Applications\\alamode.uadreader.exe"
。这完全解决了我的问题,现在 XML 文件可以在 UAD Reader 中打开,甚至可以作为 Outlook 中的附件打开。
笔记:如果您手动编辑注册表中的该条目,则需要授予自己对该条目的写入权限。
我不知道为什么在默认程序中更改它或将其设置为始终打开...不会设置此条目,但至少它可以通过组策略进行部署。