将文件拖放到以管理员身份运行的应用程序中

将文件拖放到以管理员身份运行的应用程序中

每当我在“以管理员身份运行”下运行应用程序(Visual Studio 2008、记事本等)时,我无法将文件从 Windows 资源管理器拖放到该应用程序中。

我尝试以管理员身份运行 Windows 资源管理器,但无济于事。

当我的应用程序处于“以管理员身份运行”状态时,有没有办法使拖放功能正常工作?

答案1

问题与安全权限的工作方式有关。从普通应用程序拖放到提升的应用程序的能力会破坏 UAC 背后的安全模型。但是,我不清楚为什么不显示 UAC 提示,从而允许临时提升操作(就像任何 Linux 用户每天所经历的那样)。这绝对是 Microsoft 需要努力解决的问题。让我感到困扰的是,这个问题已经存在很久了。Vista 的行为也一样。

你可以做两件事(一件很丑陋,一件很烦人)

  • 丑陋的:禁用 UAC。但您会失去它提供的所有额外安全性。
  • 恼人的:使用另一个文件管理器并以管理员身份运行它

为什么要使用另一个文件管理器?因为你实际上无法提升 Windows 资源管理器的权限。尽管在 Windows 资源管理器图标的上下文菜单中可以看到该选项,并且会显示 UAC 提示,但事实上 Windows 资源管理器不会提升权限。

答案2

这是根据 ADwarf“烦人”解决方案提出的一种解决方法:使用“以管理员身份运行”打开记事本。单击文件菜单中的打开,在文件名中输入 *,然后按回车键。现在您可以将文件从那里拖到您的应用程序中。记事本打开浏览器不支持多文件选择,但您可以以相同的方式使用其他程序进行拖放!

答案3

Windows 7的:

使用“以管理员身份运行”启动 PowerShell

类型:

taskkill /f /im explorer.exe

start-process explorer.exe

或使用以管理员身份运行启动 cmd(命令提示符)

类型:

taskkill /f /im explorer.exe

start explorer.exe

现在,您所有的新 Explorer 窗口都将被提升,您可以将它们拖放到其他提升的应用程序中。我在发布之前对此进行了测试和验证。

答案4

两年前发布的 Visual Studio 2005 更新修复了许多 UAC 问题在 Vista 上,相同的更新也修复了 Windows 7 上的相同问题。

这不是一个关键更新,因此不会自动获取,并且不是包含在 VS2005 SP1 中。他们现在没有积极宣传此更新,因为他们只是想让每个人都转到 VS2008。所以你很可能没有它。

解释 http://msdn.microsoft.com/en-us/vstudio/aa948853.aspx?lcid=1033

下载地址http://www.microsoft.com/downloads/details.aspx?FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&displaylang=en

当在正常用户模式下运行 Visual Studio 并启用 UAC 时,此更新修复了以下问题:

  • 从资源管理器窗口拖放文件
  • 通过启动解决方案/项目或相关文件类型的快捷方式来启动 VS(以普通用户身份)
  • DLL/EXE 注册仍然失败(这是正确的,因为这些是系统级更改。)

如果您以管理员身份运行 VS,则窗口仍然锁定为拖放和快捷方式,并且 DLL/EXE 注册可以正常工作,而无需完全关闭 UAC。

注意:启动时 VS 仍会警告您有关管理员模式,但现在您可能可以永久忽略该警告。

相关内容