Могу ли я использовать приложение UWP Mail из приложения C# WinForms? - PullRequest
0 голосов
/ 15 февраля 2020

Я пытался вызвать почтовое приложение UWP

enter image description here

из моего приложения WinForms (для настольных ПК), используя этот пример .

Я понимаю, что делаю это из настольного приложения, но, похоже, есть способы разрешить это в последних версиях Windows 10: здесь и здесь .

Моя цель - иметь возможность запустить встроенное почтовое приложение Windows 10 и открыть новое сообщение электронной почты с уже заполненной строкой темы, сообщением и вложением. , (Вроде как то, что MAPI имел обыкновение делать.)

Но пока, если я делаю это из моего приложения WinForms C#:

    private void sendEmailAsync()
    {
        var emailMessage = new Windows.ApplicationModel.Email.EmailMessage();

        emailMessage.Body = "This is a message body";
        emailMessage.To.Add(new EmailRecipient("someone@gmail.com"));
        emailMessage.Subject = "My subject";

        StorageFile file = await StorageFile.GetFileFromPathAsync(@"path-to\attachment-file.txt");
        emailMessage.Attachments.Add(new EmailAttachment(@"attachment.txt", file));

        WaitForAsync(Windows.ApplicationModel.Email.EmailManager.ShowComposeNewEmailAsync(emailMessage));
    }


    void WaitForAsync(IAsyncAction A)
    {
        while(A.Status == AsyncStatus.Started)
        {   
            Application.DoEvents();
            System.Threading.Thread.Sleep(1);
        }

    }

Вызов ShowComposeNewEmailAsync вызывает исключение: "HRESULT: 0x80070032 The request is not supported."

Так как я могу заставить его работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...