6

我正在尝试将一个或多个文件从我的应用程序拖到 Outlook 邮件中。如果我拖动到我的桌面,文件会按预期复制到桌面,但是当拖动到新的 Outlook 2013 邮件消息时,什么也没有发生......只有当我明确拖动到“附件文本框”时,它们才会出现,这不是很有帮助,因为默认情况下不显示附件文本框。

我不明白为什么当我将文件从桌面拖到邮件中时,我可以将它们放下,附件文本会自动显示文件,但是当我从我的应用程序中拖动时,它不起作用......,这是我的代码 :

'

    private void Form1_MouseDown(object sender, MouseEventArgs e)
    {
        var _files = new string[] { @"E:\Temp\OR_rtftemplates.xml", @"E:\Temp\Tail.Web_Trace.cmd" };
        var fileDragData = new DataObject(DataFormats.FileDrop, _files);

        (sender as Form).DoDragDrop(fileDragData, DragDropEffects.All);

        Console.WriteLine("{0} - button1_MouseDown", DateTime.Now.TimeOfDay);
    }

'

我还使用“SetFileDropList”方法将文件添加到 DataObject 中,但这没有什么区别。

我必须设置一些神奇的属性才能使其与 Outlook 消息一起正常工作。

我希望有人可以对此有所了解。

谢谢,Jurjen。

4

1 回答 1

1

我刚刚在运行 .NET 4.0 的机器上测试了其他一些东西(应用程序是在 .NET 4.5 中编译的),在将 .NET 目标更改为 4.0 并重新编译它确实可以工作后,将文件拖到新的 Outlook 消息中,很奇怪,可能是稍后迁移到 .NET 4.5 时出现问题......但现在它可以工作......

于 2013-06-27T06:26:15.097 回答