无法将文件从资源管理器拖动到在 Windows 8 上以管理员身份运行的 Notepad++

Dar*_*ark 22 windows-8

如果我以管理员身份运行 Notepad++,我无法将文件从资源管理器拖到它上面(它们被“停止”光标拒绝),如果我尝试使用资源管理器扩展,右键单击“使用 Notepad++ 编辑”它会引发错误.

使用 Notepad++“打开”对话框打开文件,甚至在资源管理器中双击它们都可以正常工作。(注意双击不是解决方案,因为我想打开的文件很少默认为 Notepad++)

我已将 UAC 设置为“从不通知”。

使用禁用 UAC“管理员批准模式”的 hack 修复了该问题,但会导致无法使用 Metro 应用程序。

Lou*_*eru 32

低完整性进程无法将消息传递给更高级别的进程。

您会发现,从 Windows Vista 开始,任何提升的进程都是这种情况。

进程在某些安全访问令牌和完整性级别下运行。Explorer 在您的用户帐户的具有中等完整性级别的受限令牌下运行,并且当您通过以管理员身份运行来提升进程时,它将使用具有高完整性级别的不同的、不受限制的安全令牌。

Vista 带来的部分安全检查是用户界面特权隔离,它可以防止较低级别的进程向较高级别的进程发送消息(因为消息可能是恶意的,例如在粉碎攻击的情况下)。

因此,在这种情况下,Windows 将不允许资源管理器将拖放消息发送到 Notepad++(它实际上返回“成功”但会删除消息)。

有关访问令牌、完整性级别和 UIPI 的更多详细信息,请参阅Windows 完整性机制设计


小智 7

Louis 解释了为什么你不能从非管理模式的资源管理器拖拽到管理模式的 Notepad++,并且 magicandre 告诉你如何通过在管理模式下运行资源管理器来解决这个问题。

在自己遇到类似问题后,我不得不进一步问:你为什么首先在管理员模式下运行 Notepad++?就我而言,这是因为我喜欢使用的 HTML Tidy 插件必须更新 Notepad++ 的 Program Files 文件夹中的 cfg 文件才能工作;Windows 8 已经疯狂地锁定了程序文件。

所以最后我解锁了 Notepad++ Program Files 文件夹,如下所述:http : //forums.auran.com/trainz/entry.php?115- Removing-the-security-restrictions-from-a-folder-in-the -程序文件文件夹

然后我可以愉快地以普通用户身份运行 Notepad++,然后我可以再次拖放或使用非常方便的上下文菜单,从非管理模式资源管理器到非管理模式 Notepad++。

我希望这在某种程度上可以帮助你。

  • 作为软件开发人员和系统管理员,我经常需要编辑具有不同权限/所有权的文件。以管理员身份运行我的编辑器比之前修改权限然后重置要方便得多。 (2认同)