2

私は要件がある地下鉄アプリケーションを開発しています:-

アプリからエンド ユーザーに電子メールで情報を送信する必要がある場合、コードを使用してその電子メールの情報またはコンテンツをプログラムで生成しています。

最初に私が取り組んだことは、この方法で私のアプリケーションでmailtoアプリを起動することです:-

using Windows.System;

//starts the default mail app with a subject, cc, bcc, and body
Launcher.LaunchUriAsync(new Uri("mailto:windows8devs@almostbeta.com?subject=Code Request&cc=kevin@almostbeta.com&bcc=admin@almostbeta.com&body=Hi!"));

次に、この方法でメールアプリを起動している場合、コードを介してプログラムでこのメールアプリに添付ファイルを添付できないことを発見しました。

次に、自分のアプリから生成されたコンテンツを他のアプリ (mailto アプリなど) と共有できる共有契約に取り組みました。

そして、コンテンツを正常に共有できました。つまり:-

これを使用して、ファイル(コードで生成したもの)をmailtoアプリに添付できます。メールアドレスを指定して送信すると、正常に動作し、正常に配信されます)

しかし、共有コントラクトを使用してファイルを共有している場合、コンテンツを共有しているメールアプリの件名または本文を設定できないことがわかりました。

だから私の疑問は:-

1) まず、共有契約を使用してファイルを共有している場合、コンテンツを共有しているメール アプリの件名または本文を設定する方法はありますか??

2) 他の代替手段がありませんか / メトロ アプリを使用して電子メールを送信する他の方法はありますか??

3)そうでない場合、目標を達成するための回避策は何ですか(コードを介してプログラムでファイルを添付し、本文、件名を設定できる電子メールを送信します)

前もって感謝します。

4

2 に答える 2

2

主に良いニュースがあります:

  1. Win-RT メール アプリを開き、mailto を使用してメールを準備できます。

    Launcher.LaunchUriAsync(new Uri("mailto:[email]?subject=[subject]&body=[body]?"));

  2. 1を参照してください

  3. これに対する最善の策は、ファイルをどこかにアップロードし、電子メールの本文に添付ファイルへのリンクを含む電子メールを送信することです

その他のメール プロパティについては、以下をご覧ください。

http://email.about.com/library/misc/blmailto_encoder.htm

それが役に立てば幸い!

于 2012-11-11T14:55:07.990 に答える
0

残念ながら、共有コントラクトを使用する場合、設定している値がどのように使用されるかを決定するのは共有ターゲット次第です。あなたはそれを制御することはできません。お気付きのように、組み込みのメール クライアントは、添付ファイルを追加するときに他の共有値を使用しません。

私が考えることができる唯一の代替手段は、SMTP を使用してコードから直接メールを送信することです。欠点はSmtpClient、.NET に Windows ストア アプリ用のクラスがなく、この機能を使用できる別の .NET 実装をすぐに見つけることができなかったことです。また、この場合、ユーザーがアプリケーションで SMTP サーバーを構成する必要があります。

これらすべてを考慮すると、おそらく最善の方法は、アプリケーションのオンライン コンポーネントで電子メールの送信を処理することです。つまり、サービスを作成してどこかでホストします。次に、メールのデータをアプリからサービスに送信し、そこから通常の .NET を使用してメールを送信しますSmtpClient

于 2012-11-10T05:39:20.280 に答える