从Java / Windows创建新邮件(默认客户端)

时间:2009-08-06 13:35:43

标签: java windows explorer mailto

我想使用默认邮件客户端打开“新邮件”视图(即在Outlook中打开一个新邮件表单)。但是当我走了

String cmd = "explorer.exe \"mailto:a@b.com?subject="+
             subject+"&body="+body+"\"";
Runtime.getRuntime().exec(cmd);

邮件出现了,但我遇到了问题:explorer.exe显示带有虚拟页面的Internet Explorer实例。是否有更好的应用程序运行,例如带有某些参数的rundll.exe?

我知道可以在没有从C ++中提出iexplore的情况下完成它,但我不知道如何用Java。

2 个答案:

答案 0 :(得分:2)

尝试使用java.awt.Desktop(java 6)

Desktop dt = Desktop.getDesktop();
dt.mail();

将打开默认邮件客户端(与mailto:protocol关联的客户端)。

答案 1 :(得分:1)

我在google搜索rundll.exe时找到了答案:

String subject = ...;
String body = ...;
String cmd = "rundll32.exe shell32.dll,ShellExec_RunDLL \"mailto:a@b.com?"+
             "subject="+subject+"&body="+body+"\"";
Runtime.getRuntime().exec(cmd);

抱歉浪费你的时间!