• ベストアンサー

メール送信

Windows2000でVB6.0のSP5を使用していますが、メールの自動送信を行いたいのですが、VBだけではできないのでしょうか? できる事ならあまり環境に依存したくないので、ActiveXやAPI等の使用は避けたいのですが、それしか方法がないのでしょうか? メールは新規メールが起動するのではなく、完全にプログラムからの自動送信を考えています。 つまり、データベース等のデータを使用してメール送信を全自動で行いたいのです。 どうぞ、よろしくお願いします。

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

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.3

私だったら市販またはフリーのOCX, DLLを探します。

who
質問者

お礼

その方向性を忘れていました。 調査してみます。 ありがとうございました。

その他の回答 (2)

  • you-m
  • ベストアンサー率58% (190/327)
回答No.2

haporunさんのおっしゃる様に、WindowsAPIならば外部のモジュールは必要ないので環境依存は少なくなります。 ただ、OSによってWin32APIの実装が微妙に違うので、95からXPまで動くようにするには、それなりに調査が必要ですね。 そういった前提でメール送信をしようとすると、まんまソケットプログラミングをVBでする事になります。 つまり、SMTPを実装するって事ですね。 必要ならMIMEエンコードも自力で実装します。 Winsockプログラミング本は結構ありますが、大抵の場合CやC++を前提にしてるので、VBに応用しようとする場合、それなりに工夫やひねりが必要です。 ポインタや構造体を引数に持ってる場合なんかがやらしいんですよね。 つまり面倒だって事ですね。 ですが、不可能では無いと思います。

who
質問者

お礼

つまり、同一のAPIで動作しない場合は、VBで簡単にメール送信を行うのは難しいということですね。 ありがとうございます。

  • haporun
  • ベストアンサー率40% (230/562)
回答No.1

ActiveXはバージョンが違うと動作しないこともありますが、APIはほとんど環境には影響されませんよ。

who
質問者

補足

メールに使用するAPIを詳しく調べてないのですが、Win95系とWinNT系ともに同じAPIで動くのでしょうか? 調べれば良いのですが、APIのヘルプがない為、御存知なら教えて下さい。

関連するQ&A