• ベストアンサー

VB6にてメールを送信する方法

VB6にて送信アカウント、送信先を指定してメールを送信する方法を知りたいのですが。どんなコントロールを使えば良いでしょうか?特別なOCXがいるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#5584
noname#5584
回答No.1

自前でSMTPを実装することは不可能ではないと思いますが、おそらく膨大な時間と労力が必要になると思いますのでお奨めしません。 という訳で、必然的に既存のコンポーネントを利用することになりますが、もっとも知名度が高いと思われるのが、BASP21というものです。 http://www.hi-ho.ne.jp/babaq/index.html http://www.b21soft.co.jp/basp21/ この他、Office 2000以上が利用可能な環境であれば、 「Microsoft CDO for Windows 2000 Library」(cdosys.dll) というコンポーネントが利用可能です。 ただし、ライセンスの問題 (非Officeユーザの再配布権など) は未確認です。 私自身、CDOを利用した経験が1度だけありますが、MSDNのドキュメントが少なかったため、市販書籍掲載の簡単なサンプルプログラムを参考にしつつ、オブジェクトブラウザでメソッド/プロパティを捜し、試行錯誤しながら作ったと記憶しています。

参考URL:
http://www.hi-ho.ne.jp/babaq/index.html,http://www.b21soft.co.jp/basp21/
lord_chan
質問者

お礼

ありがとうございました。参考になりました。

その他の回答 (4)

  • dasaida
  • ベストアンサー率0% (0/1)
回答No.5

申し訳ないです。MINEでは、なくMIMEでした。ネットで 検索してみてください。詳しい説明が結構ヒットします。 メールの本文内容やサブジェクトなどの文字コードは通 常Base64などの決まりにそってエンコードして送ります。 理由は、基本的にインターネット上では英文字が標準文 字で日本語を送信するためには、そのデータ単位にあわ せる必要が有るからです。最近は、プレーンのテキスト でも結構大丈夫ですが、英文字しか処理できないサーバ ーを通ると日本語は文字化けしてしまいます。 また、半角カナ文字は基本的にはメールで扱うことがで きません。親切なメールソフトなどだと全角カナにして おくってくれたりしますのでためしに送ってみてくださ い。 などなどその辺を説明すると長い話になってしまいます。 エンコードについては、大変ですがSMTPでメール を送信することは、結構簡単にできます。 コマンドについて検索したらいいHPがありました。 このコマンドを文字列にしてMSWINSCK.OCXをつかって SendDataメソッドで送信します。 メールサーバーへの接続は、Winsockで普通に接続すれ ばOKです。ダイアルアップなどを使う場合は、あらか じめ接続しておく必要がありますが。 http://www.puni.net/~mimori/smtp/ref.html

lord_chan
質問者

お礼

ありがとうございました。参考になりました。

  • dasaida
  • ベストアンサー率0% (0/1)
回答No.4

MSWINSCK.OCXをつかってSendDataメソッドでSMTPのコマンドを送信すればおくれますよ。メールを送ることよりもむしろMINEの設定などで苦労すると思います。送るだけでしたら結構簡単ですので試してみてはいかがでしょうか?

lord_chan
質問者

補足

>MSWINSCK.OCXをつかってSendDataメソッドでSMTPのコマンドを送信すればおくれますよ。 興味深いです、具体的にどんなコマンドをおくればいいのでしょうか?その辺の知識は全くないもので(-_-;) 「MINE」って何(?_?)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

http://www.hitachi-to.co.jp/prod/prod_2/inter/ip4ap/function.html なんて言うのを見つけました。ご参考になれば。 市販広告しているところを見ると、ActiveX コンポーネントが必要で、自作は難しいのでしょうか。

lord_chan
質問者

お礼

ちがった、VB++じゃなくてVC++ですね(^^;)

lord_chan
質問者

補足

ありがとうございます。どうやらVC++でライブラリを作ってるようですね。VB++ならどのような関数を(たぶんAPI)使えばできるのでしょうか?

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

こんにちは。maruru01です。 Outlookなら、参照設定をしてOutlookオブジェクトを利用すれば出来ます。 以下を参考にして下さい。 http://www.h4.dion.ne.jp/~asaip/olapp.htm#bk7 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/modcore/html/deovrunderstandingapplicationnamespaceobjects.asp

参考URL:
http://www.h4.dion.ne.jp/~asaip/olapp.htm#bk7
lord_chan
質問者

補足

ありがとうございます。参考になりました。