- ベストアンサー
メール送信
Windows2000でVB6.0のSP5を使用していますが、メールの自動送信を行いたいのですが、VBだけではできないのでしょうか? できる事ならあまり環境に依存したくないので、ActiveXやAPI等の使用は避けたいのですが、それしか方法がないのでしょうか? メールは新規メールが起動するのではなく、完全にプログラムからの自動送信を考えています。 つまり、データベース等のデータを使用してメール送信を全自動で行いたいのです。 どうぞ、よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
私だったら市販またはフリーのOCX, DLLを探します。
その他の回答 (2)
- you-m
- ベストアンサー率58% (190/327)
haporunさんのおっしゃる様に、WindowsAPIならば外部のモジュールは必要ないので環境依存は少なくなります。 ただ、OSによってWin32APIの実装が微妙に違うので、95からXPまで動くようにするには、それなりに調査が必要ですね。 そういった前提でメール送信をしようとすると、まんまソケットプログラミングをVBでする事になります。 つまり、SMTPを実装するって事ですね。 必要ならMIMEエンコードも自力で実装します。 Winsockプログラミング本は結構ありますが、大抵の場合CやC++を前提にしてるので、VBに応用しようとする場合、それなりに工夫やひねりが必要です。 ポインタや構造体を引数に持ってる場合なんかがやらしいんですよね。 つまり面倒だって事ですね。 ですが、不可能では無いと思います。
お礼
つまり、同一のAPIで動作しない場合は、VBで簡単にメール送信を行うのは難しいということですね。 ありがとうございます。
- haporun
- ベストアンサー率40% (230/562)
ActiveXはバージョンが違うと動作しないこともありますが、APIはほとんど環境には影響されませんよ。
補足
メールに使用するAPIを詳しく調べてないのですが、Win95系とWinNT系ともに同じAPIで動くのでしょうか? 調べれば良いのですが、APIのヘルプがない為、御存知なら教えて下さい。
お礼
その方向性を忘れていました。 調査してみます。 ありがとうございました。