Вариант использования прост. В определенный момент мне нужно показать пользователю его знакомое диалоговое окно создания электронной почты (Outlook или другое) с помощью
- поля типа from, to, Тема уже заполнена определенными значениями, определенными для приложения.
- К письму также будет прикреплено приложение.
Письмо не должно отправляться, если пользователь явно не одобряет его.
Я делал это когда-то в старину VB6 ... не могу понять, как сейчас ... Я просто помню, что это было довольно легко.
Управляемое приложение, C #, .net 3.0 +
Обновление # 1 : Да, похоже, что mailto удалена поддержка вложений (как угроза безопасности?). Я пытался
Вам необходимо включить подпись ShellExecute , как описано здесь . Все, что я получил от этого, было 5 SE_ERR_ACCESSDENIED
и 2 только для некоторого разнообразия
string sMailToLink = @"mailto:some.address@gmail.com?subject=Hey&body= yeah yeah yeah";
IntPtr result = ShellExecute(IntPtr.Zero, "open", sMailToLink, "", "", ShowCommands.SW_SHOWNORMAL);
Debug.Assert(result.ToInt32() > 32, "Shell Execute failed with return code " + result.ToInt32());
Тот же MailtoLink отлично работает с Process.Start ... но до тех пор, пока вы не упомянете вложения .
System.Diagnostics.Process.Start(sMailToLink);
Другие варианты используют объектную модель Outlook для этого ... но мне сказали, что для этого необходимо добавить ссылки на сборки, основанные на точной версии установленного Outlook. Также это может взорваться, если пользователь не предпочитает MS для электронной почты.
Следующей опцией являются Mapi и что-то, называемое Mapi33 .. Статус все еще В ПРОЦЕССЕ. Уши все еще открыты для предложений.