お世話になります。
vb6でimapサーバーに接続してメールの着信を
監視したいのですが、よい方法、ヒントはご存じないですか
いろいろ検索したのですが、vb.net情報、
またはpop3アクセスの情報しか見当たりませんでした。
特に
imapで、メール着信後、即時に処理ができればと
思っています。
VB6 が標準でサポートしているメール受信プロトコルは、
(POP でも IMAP でもなく)MAPI だけです。
しかし、telnet 等を使って直接 IMAP のコマンドを発行できる場合は、
VB6の「WinSock コントロール」を使って通信するという選択肢があります。
http://www.wakhok.ac.jp/~kanayama/summer/02/site/node216.html
ただし、プロトコルの内容を把握しておく必要があるため、
どうしても実装難易度は高めになります。この方法が使えない場合、
VB6 付属のコンポーネントだけでは対処できないので、
外部コンポーネントに頼ることになるでしょう。
> いろいろ検索したのですが、vb.net情報、
> またはpop3アクセスの情報しか見当たりませんでした。
以下、実際に試したわけでは無いので、IMAP での監視目的を
果たせるかどうかは不明ですが:
VB6 から直接利用可能なコンポーネントとしては、
たとえば下記のような IMAP 対応製品があるようです。
・nMail.DLL(業務利用は有償、個人利用は無償)
http://www.nanshiki.co.jp/software/index.html?nmail
・ActiveX版 EAGetMail($159.95〜)
http://www.emailarchitect.net/eagetmail/a/
・Chilkat IMAP ActiveX($199.00〜)
http://www.example-code.com/vbscript/imap_ssl_client_cert.asp
・Microsoft Outlook(Office Personal 等に同梱、単体製品もあり)
あとは、少々回りくどいですが、TKMP.DLL (ライセンスフリー)を
呼び出すための ActiveX DLL を .NET でさらにカプセル化し、
それを VB6 から呼び出すという手法でしょうか。
[.NET用メール送受信クラスライブラリ (TKMP.DLL)]
http://uwa.potetihouse.com/library/tkmpdll.html
[.NETコンポーネントをVB6から使用するための方法]
http://www.sev.or.jp/ijupiter/world/dc_interrop/dotnet_com_interrop.html
ご丁寧にありがとうございます。
とっかかりができましたので
チャレンジしてみたいと思います