Создание новой почты (клиент по умолчанию) из Java / Windows

StackOverflow https://stackoverflow.com/questions/1238936

  •  11-09-2019
  •  | 
  •  

Вопрос

Я хочу открыть представление "новая почта", используя почтовый клиент по умолчанию (т.е.откройте новую почтовую форму в Outlook).Но когда я ухожу

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

почта приходит, но у меня проблема: explorer.exe вызывает экземпляр Internet Explorer с фиктивной страницей.Есть ли приложение получше для запуска, например rundll.exe с определенными аргументами?

Я знаю, что это можно сделать, не вызывая iexplore из C ++, но я не знаю, как на Java.

Это было полезно?

Решение

Попробуйте с java.awt.Рабочий стол (java 6)

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

откроется почтовый клиент по умолчанию (тот, который связан с mailto:протокол).

Другие советы

Я нашел ответ, когда искал в 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);

Извините, что отнял у вас время!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top