VB6 を使用して電子メールを送信するプログラムを作成する MAPIMessages、IIS4.0 に含まれる CDONTS (NTSCollaborationDataObjects)、多くのサードパーティ メーカーが開発した電子メール ソフトウェアなど、さまざまな電子メール コンポーネントから選択できます。この記事では、CDONTS を使用して VB でメール プログラムを開発する方法を紹介します。
1. SMTPサーバーがインストールされていることを確認します
まず、SMTP サーバーが IIS サーバーにインストールされていることを確認する必要があります。これは、OptionPack のインストール時にデフォルトでインストールされるオプションです。 SMTP サーバーがインストールされている場合は、System32 ディレクトリに cdonts.dll という名前のファイルが存在します。
2. 最も単純なメール送信プログラム
以下は最も単純な電子メール送信プログラムで、タイトルが「Title」、内容が「Hello」の電子メールを [email protected] から [email protected] に送信します。
PRivateSubcmdSendMail_Click()
Dimobjmailasオブジェクト
SetobjMail=CreateObject("CDFONTS.DLL")
ObjMail.Send"[email protected]","[email protected]","タイトル","Hello"
SetobjMail=なし
EndSub
3. 電子メールの添付ファイルを送信する
電子メールと一緒に送信する必要がある添付ファイルがある場合は、CDONTS の AttachFile メソッドを使用できます。
PrivateSubcmdSendMail_Click()
DimobjMailasObject
SetobjMail=CreateObject("CDFONTS.DLL")
WithObjMail
.From="[email protected]"
.To="[email protected]"
.Subject="タイトル"
.Body="こんにちは"
.AttachFile"c:/document/sample.doc","sample.doc"
。送信
EndWith
SetobjMail=なし
EndSub
4.CDONTS コンポーネントの一般的に使用されるプロパティとメソッド
CDONTS コンポーネントの一般的に使用されるプロパティとメソッドを以下に示します。
財産:
バージョン: CDONTS コンポーネントのバージョン番号を返します。
MailFormat: 電子メール形式、1-通常のテキストタイプ、0-MIME タイプ。
Cc: 参照用に 1 つ以上の電子メール アドレスを設定します
From: メール送信者のアドレス
To: 電子メール受信者のアドレス
件名: タイトル
本文: 内容
BodyFormat: コンテンツ形式、1 - 通常のテキスト、0 - ハイパーテキスト。
方法:
AttachFile: ファイルを添付します
AttachURL: アドレスを添付します
送信: メールを送信
5.ハイパーテキスト形式でメールを送信する
画像や音声だけでなく、アニメーションを埋め込むこともできるハイパーテキスト形式を使用したメールを多く見たことがあるはずです。このようなメールを友人に送信すると、通常のメール送信プログラムではできないことなので、友人はきっと思いがけない驚きを感じるでしょう。以下では、CDONTS コンポーネントを使用して、sample.gif という名前の画像を含む電子メールを HTML 形式で送信します。プログラムは次のとおりです。
PrivateSubcmdSendMail_Click()
DimobjMailasObject
SetobjMail=CreateObject("CDFONTS.DLL")
DimstrHTMLasString
StrHTML="<html><頭>"
StrHTML=StrHTML "<title>電子メール</title></head> (ハイパーテキスト形式を使用)
StrHTML=StrHTML "<body><p><strong>CDONTS を使用した電子メール送信の例"
StrHTML=StrHTML "<imgsrc=sample.gif></strong></p>"
StrHTML=StrHTML "<p>上の例には埋め込み画像sample.gifがあります</p>"
StrHTML=StrHTML "</body></html>"
WithObjMail
.From="[email protected]"
.To="[email protected]"
.Subject="タイトル"
.Body=strHTML
.AttachURL"c:/mydata/sample.gif","sample.gif"
.BodyFormat=0
.EmailFormat=0
。送信
EndWith
SetobjMail=なし
EndSub
この時点で、SMTP 電子メール処理の欠陥を発見したはずです。 SMTP サーバーは出力メッセージを受信しますが、送信者の名前とアドレスは検証しません。これは SMTP の非同期送信メカニズムによって決まりますが、誰かがこれを不純な目的で使用して、他人になりすまして電子メールを送信する可能性があります。この記事では、ISP があなたの行動を知ると、すぐにアカウントが削除される可能性が高くなりますので、安易に試行しないことを強くお勧めします。 ->