Windows SendTo来自脚本

时间:2013-06-09 21:45:04

标签: windows sendto

我正在编写一个应用程序,我必须使用默认邮件应用程序发送带有附件的电子邮件。

在发送电子邮件之前,我希望用户能够编辑文本,即应用程序应该只打开带有预先填写的收件人和附件的邮件客户端,并让用户有机会发送它。

如果我从文件的上下文菜单中选择“SendTo / Mail Recipient”,我至少需要同样的效果。

基于“mailto:”技巧的解决方案无效,因为有邮件客户端不支持“attachment =”部分。

我发现的最完整的解决方案就是这个:    http://www.codeproject.com/Articles/3839/SendTo-mail-recipient 但似乎很多代码都是如此简单! (使用VS2008编译时也会崩溃)

还有其他选择吗?即使它是外部工具或脚本(例如,使用cscript启动的.vbs脚本)也没关系。

1 个答案:

答案 0 :(得分:0)

我建议你使用MAPI(Messaging Application Program Interface)。

如果dotNet可以成为解决方案的一部分,这里是C#中的一个现成的类:Class for creating MAPI Mail Messages。它会给你这样的东西:

MapiMailMessage message = new MapiMailMessage("Test Message", "Test Body");
message.Recipients.Add("Test@Test.com");
message.Files.Add(@"C:\del.txt");
message.ShowDialog();

否则,如果你觉得它很舒服,你总是可以用C ++来做,就像answer建议的那样。

然后,您将能够ShellExecute二进制可执行文件并传递一些参数。

希望这会有所帮助: - )