// PlugIn.h: CPlugIn クラスのインターフェイス // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_PLUGIN_H__3C69B58F_287B_4057_B2B6_1C68552472AC__INCLUDED_) #define AFX_PLUGIN_H__3C69B58F_287B_4057_B2B6_1C68552472AC__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #define MAILIST_PLUGIN "MailistPlugIn"//プラグインバージョンチェック用 #define PLUGIN_VERSION 0//情報取得用 #define PLUGIN_NAME 1//情報取得用 typedef struct tagMailHeaderInfo { LPCTSTR lpMyName; //メール作成者名 LPCTSTR lpMyAddress; //メール作成者アドレス LPCTSTR lpFrom; //From: LPCTSTR lpFromName; //From:の文字列定義名部分 LPCTSTR lpFromAddr; //From:のアドレス定義部分 LPCTSTR lpFromHandle; //From:のアドレス部分の@以前部分 LPCTSTR lpTo; //To: LPCTSTR lpCc; //Cc: LPCTSTR lpBcc; //Bcc: LPCTSTR lpSubject; //Subject: LPCTSTR lpDate; //Date: LPCTSTR lpSender; //Sender: LPCTSTR lpMsgId; //Message-Id: LPCTSTR lpReply; //Reply-To: LPCTSTR lpRefer; //References: LPCTSTR lpStatus; //Status: LPCTSTR lpInRpTo; //In-Reply-To: LPCTSTR lpContentType; //Content-Type: LPCTSTR lpMailer; //X-Mailer: } MAIL_HEADER_INFO; typedef struct tagFolderInfo { LPCTSTR lpTopFolderFullPath; //トップフォルダのプルパス LPCTSTR lpFolderPath; //プラグインをコールしているフォルダのパス(トップフォルダからの相対パス) } MAIL_FOLDER_INFO; //GetPluginInfo() extern "C" int WINAPI GetPluginInfo (int infono, LPSTR* lplpBuf);//プラグイン側 typedef int (CALLBACK* lpGetPluginInfo) (int infono, LPSTR* lplpBuf);//コール側 //SetPlugIn() extern "C" int WINAPI SetPlugin (HWND hWnd, MAIL_FOLDER_INFO *lpFolderInfo);//プラグイン側 typedef int (CALLBACK* lpSetPlugin) (HWND hWnd, MAIL_FOLDER_INFO *lpFolderInfo);//コール側 //GetMailBody() extern "C" int WINAPI GetMailBody (int infono, LPSTR* lplpBuf, LPCTSTR lpHeader, LPCTSTR lpBody, MAIL_HEADER_INFO* lpMailInfo, MAIL_FOLDER_INFO *lpFolderInfo);//プラグイン側 typedef int (CALLBACK* lpGetMailBody) (int infono, LPSTR* lplpBuf, LPCTSTR lpHeader, LPCTSTR lpBody, MAIL_HEADER_INFO* lpMailInfo, MAIL_FOLDER_INFO *lpFolderInfo);//コール側 class CPlugIn { public: CPlugIn(); virtual ~CPlugIn(); //プラグイン種別 enum PLUGIN_KIND { eNONE = 0, //エラー eAutoReply = 1, //自動返信 eAutoExec = 2 //メールエージェント }; }; #endif // !defined(AFX_PLUGIN_H__3C69B58F_287B_4057_B2B6_1C68552472AC__INCLUDED_)