Регистрация | Вход 
Просмотр статьи
Запуск Pocket Outlook для отправки e-mail

Запуск Pocket Outlook из приложения для отправки электронной почты.

Для решения задачи необходимо запустить файл \Windows\tmail.exe, который является не чем иным как исполняемым файлом Pocket Outlook, и передать ему ряд параметров, которые бы указали, что следует открыть форму редактирования письма. Эти параметры подозрительно напоминают аналогичные из HTML :-)
mailto:mail@mail.info?subject=This is subject&body=This is body

Итак, задача свелась к запуску нового процесса:

using System.Diagnostics;

ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = "
\\windows\\tmail.exe";
psi.Arguments = "mailto:" + txtEmail.Text + "?subject=" + txtSubject.Text +"&body=" + txtBody.Text;
psi.UseShellExecute = true;
Process.Start(psi);

Есть и другой вариант, более похожий на стандартную передачу параметров Windows-приложению.
Для этого используются параметры
-to "<e-mail>" адрес отправителя
-сс "<e-mail>" копия
-bcc "<e-mail>" скрытая копия
-subject "<subject>" тема сообщения
-body "<body>" текст сообщения
-attach "<file name>" файл вложения
-service "<account name>" Имя учетной записи с помощью которой будет создано сообщение. В случае если service не указан и существует более одной учетной записи пользователю будет предложено выбрать учетную запись.

В этом случае строку параметров можно будет создать примерно так:

private string CreateAgruments()
{
    StringBuilder args = new StringBuilder();
    args.AppendFormat(null, "-attach \"{0}\" ", txtAttachment.Text);
    args.AppendFormat(null, "-to \"{0}\" ", txtEmail.Text);
    args.AppendFormat(null, "-subject \"{0}\" ", txtSubject.Text);
    args.AppendFormat(null, "-body \"{0}\" ", txtBody.Text);
    return args.ToString();
}

Полный пример вы можете скачать здесь: POutlookTest.zip (11 KB).

Александр Игнатьев,
http://www.vestace.ru/


Автор: Alexander
Дата публикации: 20.12.2007
Число просмотров: 2548

Возврат


Copyright 2007-2009 by Alexander Ignatyev