メールの送信
メールの送信機能を持ったアプリケーションを作成する場合、Visual Basic 6.0 では、Microsoft MAPI Controls 6.0 を使用していました。一方、Visual Basic .NET では、System.Web.Mail 名前空間 の SmtpMail クラスを使用しメールの送信機能を実装することができます。Mail.SmtpMail クラスは、CDOSYS (Collaboration Data Objects for Windows 2000) メッセージ コンポーネントを使用して、メール送信を実現しています。そこで今回は、Visual Basic .NET でメールの送信機能を持ったアプリケーション (図1) を作成する方法を紹介します。 ![]() 図1 「送信」ボタンをクリックすると、メールが送信され送信終了のメッセージボックスが表示されます。「送信」ボタンの実装コードは以下のとおりです (事前に、[参照設定]で「System.Web」を追加しておく必要があります)。
MailMessage クラスの From プロパティに差出人 (受信者) を、To プロパティに送信先を、Subject プロパティにメールの件名を、 Body プロパティにメールの本文をそれぞれ設定します。また、Attachments プロパティで本文とともに送信する添付ファイルを設定します。上記 (リスト1) のコードを実装し、図1 の「送信」ボタンをクリックすると、メールが送信されます。そして、各テキストボックスのデータが削除され、図2 の送信完了の通知が表示されます。 ![]() 図2 リスト1 を実装しても、添付ファイルを送信することはできません。次は、下記のコードを実装して、添付ファイルを指定できるようにします。
図1 の「...」ボタンをクリックすると、ダイアログボックス (図3) を開き、添付するファイルを指定します。 ![]() 図3 上記 (リスト2) の「ofd.InitialDirectory = "C:/work"」でダイアログボックスが表示されたときのデフォルトフォルダを指定します。「ofd.Filter = "すべてのファイル(*.*)|*.*"」で[ファイルの種類]に表示される選択肢を指定し、「ofd.Title = "添付するファイルを選択してください"」でダイアログボックスのタイトルを指定します。そして、「If ofd.ShowDialog() = DialogResult.OK Then」の「ofd.ShowDialog()」でダイアログボックスを表示し、[OK]ボタンをクリックされると、「file = ofd.FileName」で選択されたファイル名 (パス) を取得し、「txtAttachment.Text = System.IO.Path.GetFileName(file)」で、拡張子を含むファイル名のみをテキストボックスに表示されます (図4)。ファイルパスからファイル名 (拡張子を含む) を取得する場合、System.IO 名前空間の Path クラスで GetFileNameメソッドを使用します。 ![]() 図4 これにより、図1 のアプリケーションで添付するファイルを指定し、メールで送信することができます。 |
メールの送信
最新推荐文章于 2022-04-19 15:47:31 发布