Windows Vista 中/高完整性级别进程之间的拖放
在 Windows Vista 中,我无法将文件拖/放到应用程序的窗口中,因为它作为高完整性级别进程运行。 我需要以较高的速度运行它,但我还需要能够接受从低/中完整性级别进程(如 Windows 资源管理器)中删除的文件。 我相信是 UIPI 阻止了拖/放操作。 我知道我可以使用 ChangeWindowMessageFilter 函数来允许某些 Windows 消息绕过 UIPI,但我不确定要添加哪些消息以允许拖/放操作。 ChangeWindowMessageFilter 是允许这种情况的正确方法,还是有更好的方法? 谢谢!
In Windows Vista, I am unable to drag/drop files onto my application's window because it is running as a high integrity level process. I need to run it as high, but I also need to be able to accept dropped files from low/medium integrity level processes like Windows Explorer. I believe it is UIPI that is blocking the drag/drop operation. I know that I can use the ChangeWindowMessageFilter function to allow certain Windows messages to bypass UIPI, but I'm not sure which messages to add to allow the drag/drop operation. Is ChangeWindowMessageFilter the right approach to permit this, or is there a better way? Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
考虑此博客条目的标题:
“为什么不应使用 10 英尺的距离触摸
ChangeWindowMessageFilter
杆...”,我想这不是最好的方法;)
在这篇博客文章的评论中,讨论了另一种方法,但结论几乎相同:
注意:此条目“那么,今天谁想设计一个功能?”说明了同样的问题,并指出了 Raymond Chen 的富有洞察力的文章:
它们都详细说明了问题。
此 ServerFault 问题“
另请参阅此 有关 IE 的文章
Considering the title of this blog entry:
"Why you shouldn’t touch
ChangeWindowMessageFilter
with a 10-ft pole…",I guess it is not the best approach ;)
In the comments of this blog entry, an alternative approach was discussed, but with pretty much the same conclusion:
Note: this entry "So, who wants to design a feature today?" illustrates the same problem, and points to the insightful articles of Raymond Chen:
which both detail the issue.
This ServerFault question "Why can’t I drag/drop a file for editing in notepad in Windows Server 2008?" also includes some answers, but no quick-win.
See also this article on IE