C++ でメールの作成と内容設定、SmtpClient を使用したメール送信
新しいメールメッセージの作成
MailMessage クラスはメールメッセージを表し、開発者が新しいメールメッセージを作成できるようにします。From、To、Subject、Body などの基本的なメールプロパティは、新しく作成したメールメッセージに簡単に付加できます。同様に、メールメッセージを EML、MSG、MHTML などのさまざまな形式で保存できます。
<a name="csharp-create-new-email-msg" id="csharp-create-new-email-msg">手順: C# で新しいメールメッセージを作成
- MailMessage クラスのインスタンスを作成します。
- メールメッセージのプロパティを設定します。
- メールメッセージを異なる形式で保存します。
- SmtpClient クラスのインスタンスを作成し、Send メソッドを使用してメールを送信します。
以下の C++ コードスニペットは、さまざまなプロパティを持つ新しいメールを作成する方法を示しています。
メールアドレスをフレンドリーネームに変更
以下のプログラミングサンプルは、メールメッセージ内のメールアドレスをフレンドリーネームに変更する方法を示しています。フレンドリーネームは、メールアドレスよりも人間にとって分かりやすい名前で、例として js346@domain.com の代わりに John Smith などがあります。メールを送信する際、MailMessage クラスのコンストラクタでメールアドレスにフレンドリーネームを関連付けることができます。
メールメッセージでメールアドレスをフレンドリーネームに変更するには、次の手順に従います:
- MailMessage クラスのインスタンスを作成し、To と From フィールドにフレンドリーネーム付きのメールアドレスを指定します。
- MailMessage インスタンスで MailMessage クラスのコンストラクタを呼び出し、フレンドリーネームと共に Cc および Bcc のメールアドレスを指定します。
- SmtpClient クラスのインスタンスを作成し、Send メソッドを使用してメールを送信します。
以下のコードスニペットは、メールアドレスに対して名前を表示する方法を示します。
メール本文の設定
MailMessage クラスはメールメッセージを表します。MailMessage クラスのインスタンスは、SmtpClient クラスを使用して SMTP サーバーへ送信されるメールメッセージを構築するために使用されます。メール本文は MailMessage クラスを使用して指定できます。メールは複数の本文を持つことができます。MailMessage クラスには 2 種類のメール本文があります:
- HTML 本文
- テキスト本文
HtmlBody と TextBody に加えて、Aspose.Email にはメール本文に関連する他の 2 つの読み取り専用プロパティがあります:
- IsBodyText: 本文がテキストかどうかを示します。
- IsBodyHtml: 本文が HTML かプレーンテキストかを示します。
本記事では、プレーンテキストまたは HTML 本文テキストの定義、代替テキストの設定、メール本文のエンコード方法を示します。
HTML 本文の設定
HtmlBody メッセージ本文の HTML コンテンツを指定するために使用されます。HtmlBody は タグで囲む必要があります。以下のコードスニペットは、HTML 本文の設定方法を示します。
代替テキストの設定
AlternateView クラスを使用して、メールメッセージの別の形式のコピーを指定できます。たとえば、HTML でメッセージを送信する場合、HTML だけでなくプレーンテキスト版も提供したい場合があります。受信者が HTML を表示できない場合に備えてです。このクラスには LinkedResources と BaseUri という 2 つのプロパティがあり、メールコンテンツ内の URL を解決するために使用されます。
- LinkedResources は LinkedResources オブジェクトのコレクションです。レンダリング時に、メールコンテンツ内の URL はまず LinkedResources コレクション内各オブジェクトの Content Link の URL と照合され、解決されます。
- BaseUri はメールリーダーが本文内の相対 URL を解決するため、また LinkedResources コレクション内の相対 Content Link URL を解決するために使用されます。
以下の C++ コードスニペットは、代替テキストを設定する方法を示しています。