SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(iNetSuite)

Popコンポーネントを利用して簡易メーラーを作成する

iNetSuite for .NETを使ったメール受信ソフトの作成

  • このエントリーをはてなブックマークに追加

 iNetSuite for .NETのPopコンポーネントとSmtpコンポーネントを利用すると、メソッドとプロパティを設定するだけで簡単にメールソフトを作成できます。今回はこのPop・Smtpコンポーネントを使って、Eメールを受信するアプリケーションを自作します。

  • このエントリーをはてなブックマークに追加

POPサーバにログインしてメールを受信する
POPサーバにログインしてメールを受信する
プログラム起動時にサーバのアドレスなどを設定する
プログラム起動時にサーバのアドレスなどを設定する

はじめに

 iNetSuite for .NETの、PopコンポーネントとSmtpコンポーネントは、インターネット通信を使ったメール送受信機能を提供するコンポーネントです。PopコンポーネントはEメールの受信用で、SmtpコンポーネントはEメール送信用のコンポーネントです。いずれのコンポーネントも、メソッドとプロパティの操作だけで簡単にEメールの送受信ができます。

 今回はこの2つのコンポーネントとリストボックス、テキストボックスを使って、主にEメールを受信するアプリケーションを作成します。

対象読者

 Visual Basic 2005を使ってプログラムを作ったことがある人。

必要な環境

 Visual Basic 2005またはVisual Studio 2005、およびEメールの操作ができる環境。

プログラム実行時の注意事項

 本稿の実行ファイル(バイナリファイル)を動かすには、zipファイルに同梱してある以下のファイルが必要になります。

  1. Dart.PowerTCP.Mail.dll …… 本体アセンブリファイル
  2. Dart.PowerTCP.Mail.Forms.dll …… フォーム用アセンブリファイル
  3. Dart.PowerTCP.Mail.resources.dll …… サテライトリソース

 1.と2.のファイルは実行プログラムと同じフォルダに格納します。3.のファイルはサブフォルダ「ja」を作成し、その中に格納してください。

 また、.NET Framework 2.0から追加されたクラスやメンバを使用しているので、.NET Framework 2.0がインストールされていることが必須条件です。

作成するアプリケーションのGUI

 今回のアプリケーションは、「MyMail」というプロジェクト名で作成し、GUIはWindowsのコモンコントロールと、iNetSuite for .NETのコントロールを組み合わせて使用します。

 メールの受信にはPopコンポーネントを使用し、POPサーバにログインしてサーバからメール情報を取得します。そして、その情報の中から「送信者」「件名」「受信日時」「サイズ」「メール本文」の5つのデータを取り出し、フォームに配置したリストボックスとテキストボックスに表示します。

 フォームには、SplitContainerコントロールを使用して4つのリストボックスと1つのテキストボックスを配置し、プログラム実行時にユーザーが自由にサイズを変更できるようにします。

 Smtpコンポーネントは、メール送信を実行するコンポーネントです。.NET Frameworkクラスライブラリにあるメール系のクラスを使うよりも簡単に、送信メールを作成できます。

GUIの使用コントロール
GUIの使用コントロール

コンポーネントのインストール

 今回使用するiNetSuite for .NETのインストーラは、グレープシティのWebページからダウンロードできます。製品ページ左側の[ダウンロード]-[トライアル版]をクリックし、ダウンロード方法([FTP]または[HTTP])を選択してください。ファイルはLZH形式で圧縮されています。

 有償のコンポーネントですが、プロダクトキーを入力せずにインストールすることで、トライアル版として使用できます。トライアル版の試用期間はインストール後から30日間です。制限事項などの詳細については、インストーラに同梱されているリリースノートを参照ください。

コントロールの追加

 iNetSuite for .NETをインストールしたら、ツールボックスに専用のタブを作成し、iNetSuite for .NETのコンポーネントを追加します。追加するコンポーネントは、「.NET Frameworkコンポーネント」の「名前空間」が「Dart.PowerTCP」で始まる名前空間のコンポーネントです。

「Dart.Power TCP」で始まる名前空間のコンポーネントを追加する
「Dart.Power TCP」で始まる名前空間のコンポーネントを追加する

Form1の作成

 フォームにコントロールを配置していきますが、最初にSplitContainerを4つ組み合わせて、「送信者」「件名」「受信日時」「サイズ」のリストボックスと「メール本文」のテキストボックスの表示領域をユーザーが自由に変更できるようにします。

  1. StatusStripコントロールをフォームに配置します。Dockプロパティを「Top」に設定します。
     
  2. SplitContainerコントロールを1つフォームに配置します。タスクメニューで「上下分割」に変更し、Dockプロパティを「Fill」にします。
     
  3. 上側のペインに、もう1つSplitContainerコントロール(左右分割)を配置します。そして、左右のペインにそれぞれSplitContainerコントロール(左右分割)を配置します。これで、全部で5つのマス目が出来上がります。
SplitContainerコントロールの配置結果
SplitContainerコントロールの配置結果
  1. 次に、上部4つのペインに、それぞれLabelコントロールとListBoxコントロールを組み込み、Dockプロパティを使ってペインと合体させます。また、下のペインにテキストボックスを配置し、Dockプロパティを「Fill」に設定します。
     
  2. StatusStripコントロールに、3つのSplitButtonとStatusLabelを組み込みます。SplitButtonは「受信」「送信」「設定」という名前にして、その下に「メール受信」「メール送信」「アカウント」をそれぞれ作成します。また、StatusLabelは文字を消して適当に空白を入れておきます。
SplitButtonとStatusLabelの組み込み
SplitButtonとStatusLabelの組み込み
「受信」の下に「メール受信」を作成
「受信」の下に「メール受信」を作成
「送信」の下に「メール送信」を作成
「送信」の下に「メール送信」を作成
「設定」の下に「アカウント」を作成
「設定」の下に「アカウント」を作成
  1. フォームにPopコンポーネントとSmtpコンポーネントを配置します。

 以上で出来上がりです。

Form2の作成

 このフォームは、メールサーバにログインするための情報を設定するフォームです。入力した情報の保存処理までは作成していません。しかし、コードモジュールで記述した変数に情報を格納するので、プログラム実行中は入力値がメモリに保存されています。

 フォームは、6つのLabelとTextBox、1つのButtonで作成します。また、パスワード用のTextBoxのみ、Passwordプロパティを「*」に設定しています。

Form2(デザイン画面)
Form2(デザイン画面)

次のページ
コードの作成

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ComponentZine(iNetSuite)連載記事一覧
この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/677 2009/03/17 11:54

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング