1

我想使用默认邮件客户端打开“新邮件”视图(即在 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 中如何。

4

2 回答 2

2

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

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

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

于 2009-08-06T13:50:34.343 回答
1

我在谷歌搜索 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);

很抱歉浪费您的时间!

于 2009-08-06T14:03:08.460 回答