2017-09-22 8 views
0

私はアプリケーションをUWPに移植していますが、UWPではAPIが使えません。そのうちの1つはクラシックメールAPI(MAPI)です。UWPメールAPI - UWP以外のプロジェクト(ただしデスクトップブリッジ)

  • UWPを含む新しいメールAPI
  • すべてのアプリケーション(私のアプリは、WPFのWindowsデスクトップアプリケーションである)新しいUWP APIを使用することができますいくつかのWinRTの のDLLを参照する(公開します

    は、私が見つけたということです新しいメールAPI)。 (

私はすでに光センサーといくつかの成功しテストを行ったUWP - (ここでは)が、これは別の話であり、我々は、この(クロスプラットフォームのUIの使用を扱っていない。ところでUWP ANF WPF UIはcompatibileではありません) Windowsコンソールアプリケーションから消費されたAPI)、メールAPIも同様に機能することを期待していました。しかし、この単純なコードを実行すると、UWPプロジェクトでコンパイルされたときに動作しますが、WPFアプリケーション内から実行すると動作しません。それはで終わる実行

EmailMessage emailMessage = new EmailMessage(); 
emailMessage.To.Add(new EmailRecipient("[email protected]")); 
emailMessage.Body = "message body"; 
await EmailManager.ShowComposeNewEmailAsync(emailMessage); 

が通信: 要求はHRESULT(0x80070032)

質問があるからの例外をサポートしていません: これは既知の制限で、UWPによって公開されているメールAPIはしませんWPF(または非UWPホスト)からの作業ですか? 一般的な動作であり、私の環境に固有ではないことを誰でも知ることができますか? (WPFプロジェクトでコンパイルするために、2つのDLLへの参照を追加する必要があります。System.runtime.windowsruntime.dllとWindows.winmd)

は、私が「生」WPFアプリケーションの両方からUWPメールAPIを呼び出すために試みたが、それをパッケージ化してWindowsデスクトップUWPアプリケーションとしてインストールした場合でも、同じ結果が得られます。 UWPアプリケーションからコードを実行するだけ

は、メールクライアントに事前に

おかげで、 ミハル特にWindows.ApplicationModel.Email APIは現在、このシナリオではサポートされていないことを

答えて

1

URIを使用できますか?私はより多くのアプリがURIをサポートすると思うが、彼らはuwpメールプロトコルをサポートしていない。

私はあなたにURIでメールを送信する簡単な方法を教えます。

私は電子メールの送信に役立つ機能を書いています。

private async Task UniversallyEmail(string email, string subject, string messageBody) 
    { 
     messageBody = Uri.EscapeDataString(messageBody); 
     string url = $"mailto:{email}?subject={subject}&body={messageBody}"; 
     await Launcher.LaunchUriAsync(new Uri(url)); 
    } 

私は使いやすいと思います。

関連する問題