gpt4 book ai didi

c# - 在管理员帐户中运行 visual studio 时无法触发拖放事件

转载 作者:行者123 更新时间:2023-12-02 04:59:11 25 4
gpt4 key购买 nike

我使用 Visual Studio 2008,.net Framework 3.5

我有一个 web 服务应用程序(一个使用 web 服务的 winform 客户端),我必须在管理员帐户中运行它

我需要将文件从 Windows 资源管理器拖放到此应用程序的窗体中。

这是我的代码:

this.AllowDrop = true;

private void Form1_DragEnter(object sender, DragEventArgs e)
{

if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
e.Effect = DragDropEffects.All;
}

private void Form1_DragDrop(object sender, DragEventArgs e)
{
string[] fileList = e.Data.GetData(DataFormats.FileDrop) as string[];
foreach (string s in fileList)
{
MessageBox.Show(s);
}

}

当我在普通帐户中运行时它可以工作,但在管理员中它不会。如何解决?

最佳答案

这里也提出了这个问题: Drag and drop not working in C#答案是“从 Windows Vista 开始,由于用户界面特权隔离,您无法从运行在较低完整性级别的应用程序拖放到运行在较高级别的应用程序。”

参见 http://blogs.msdn.com/b/patricka/archive/2010/01/28/q-why-doesn-t-drag-and-drop-work-when-my-application-is-running-elevated-a-mandatory-integrity-control-and-uipi.aspx详情

附言引用重复的评论也是正确的。

关于c# - 在管理员帐户中运行 visual studio 时无法触发拖放事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17416765/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com