我希望能够将Outlook消息拖放到浏览器中并触发Javascript事件,例如,使用消息的GUID创建a link to the message。
但是我坚持第一步 - 尝试在文件夹列表外的任何位置拖动Outlook邮件显示不允许的游标。
我准备放弃,除了我发现一些帖子提示启用此操作的方法,例如 How to drag and drop an email, from Outlook, into a .NET application?
有没有办法让这成为可能? (包括编写浏览器扩展,但并不理想。)
答案 0 :(得分:7)
我找到了一个免费的解决方案,它发布不到30天前: https://tonyfederer.github.io/OutlookFileDrag/
来自网站:
当您尝试从Outlook拖放时,Outlook会正确地将格式标识为虚拟文件(CFSTR_FILEDESCRIPTORW),因为文件不直接存在于磁盘上。相反,它们包含在PST文件,OST文件或Exchange服务器上。
但是,许多应用程序不支持,例如Web浏览器和大多数.NET / Java应用程序。
要解决此问题,Outlook File Drag会挂钩Outlook拖放过程并添加对物理文件的支持(CF_HDROP)。当应用程序请求物理文件时,文件将保存到临时文件夹中。
我查看了https://outlook2web.com/和https://www.wilutions.info/ddaddin-download.html
但免费的工作正常,它是开源的!
答案 1 :(得分:1)
另一种解决方案(非免费)是DDAddin。这非常有效。该解决方案将添加一个Outlook加载项,将选定的电子邮件从HTML 5转换为 serviceApp.getAll().$promise.then(function(res){}).....etc
,以便浏览器可以理解它。
确保在安装加载项后重新启动Outlook。该链接提供了有关如何测试功能的更多详细信息,但您可以轻松地将电子邮件拖放到浏览器中以查看其是否正常工作。
答案 2 :(得分:0)
对于Outlook附件,请参阅Upload fails when user drags and drops attachment from email client。
消息类似。 BHO for IE肯定是可行的,但它会相当复杂 - 你基本上需要创建自己的IDropTarget接口实现并设置浏览器窗口以使用你的实现。然后,您可以转换正在拖动的消息(您可以将其保存为MSG文件)并将其传递给浏览器实现的旧IDropTarget接口,该接口又将其传递到网页上的脚本。
答案 3 :(得分:0)