[英]Drag'n'drop image inside link from IE to C#
我正在尝试获取图像文件(src属性)的链接,该文件是我从浏览器拖放到桌面应用程序上的。 位于锚点(a标签)内的图像。
我的代码适用于Chrome和Fx-但不适用于IE :(
if (e.Data.GetDataPresent("HTML Format"))
{
string data = (string)e.Data.GetData(DataFormats.Html);
似乎资源管理器没有任何发送到drg'n'drop机制的“ HTML格式”数据,或者我做错了。
有没有办法从IE获取图像src?
UPDATE,我看到,如果我选择其中包含Image的链接(“选择”),IE将发送HTML格式。 Fx和Chrome会在拖动时自动进行选择。
您有几个问题。
首先,您应该下载ClipSpy工具 ,该工具将确切显示正在拖放/复制/粘贴的格式。 您会发现图像SRC URL以UniformResourceLocatorW格式存储,并且还有其他多种可用格式,包括指向图像文件本地副本的CF_HDROP。
其次,由于安全限制,您会发现在Vista和Windows 7上的“保护模式” IE中,“拖放”无法正常工作。 要启用拖放功能,您必须在注册表中列出您的应用程序。
您可以通过创建DragDrop策略来注册应用程序以接受拖放操作中的Web内容。 DragDrop策略必须具有与其关联的全局唯一标识符(GUID)。 使用CreateGuid为您的策略创建新的GUID。 接下来,将密钥添加到以下位置。
HKEY_LOCAL_MACHINE \\ SOFTWARE \\ Microsoft \\ Internet Explorer \\ Low Rights \\ DragDrop
将新密钥的名称设置为为策略创建的GUID,然后将以下设置添加到密钥。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.