|
自己コメントです
>複数メールの区切りは、行頭にピリオドだけの行として、複数メールを所定のフ
>ァイルに落とす。(これが、TaskPrize が要求するフォーマットです。)
>
>特定のヘッダの情報及び、ログのファイル名、オフセットを本文の前に一定のフ
>ォーマットで情報を付加してから、上記の処理を行う。
かわしたさん、プックンさんのご教示と、マクロヘルプなどの参照によって、後
者の方の処理は、一応動くようになりました。汚いコードで恐縮なのですが、書
いてみます。
エラー処理などもしていませんし、フォルダも決め打ちですが。
選択したメールをエクスポート用のフォルダにコピーして、メールの先頭に情報
を付加する処理をします。
#このフォルダのメール全てを対象にして処理を繰り返す部分(while の処理)が、
#全然判らなくて、試行錯誤してこうなってますが、どなたか添削していただ
#けるとありがたいです。
ここまで来て判らない部分が、最後の方のフォルダのメール全てを選択する処理
です。
エクスポートの形式は、一応 TaskPrize の方に、mbox 形式でも処理できるよう
にお願いをして見ました。もしこの要望が通れば、鶴亀の側では mbox でexport
すればよいことになります。
loaddll "TKInfo.dll";
#n = dllfunc( "DisableDraw", 1 );
#n = dllfunc( "Copy", "", "受信\\TPZ" );
#n = dllfunc( "SelectFolder",dllfuncstr( "CurrentAccount" ), "受信\\TPZ"
);
#total = dllfunc("MailCountAll");
while(#total){
if (#total==0) break;
#n = dllfunc("SetMailIndex", #total-1);
#n = dllfunc("BeginEditMail");
#r = readonly;
#b = browsemode;
if(#r) readonlyswitch;
if(#b) browsemodeswitch;
gofiletop;
$MailFileName = dllfuncstr("MailFilePath");
$Date = dllfuncstr( "CurrentHeader", "date" );
$From = dllfuncstr( "CurrentHeader", "From" );
$Subject = dllfuncstr( "CurrentHeader", "Subject" );
$MsgID = dllfuncstr( "CurrentHeader", "Message-ID" );
insert "\n";
insert "==Header Information for TPZ==\n";
insert " |MailFileName:" + $MailFileName + "\n";
insert " |Date :" + $Date + "\n";
insert " |From :" + $From + "\n";
insert " |Subject :" + $Subject + "\n";
insert " |Message-ID :" + $MsgID + " \n";
insert "==============================\n\n";
#n = dllfunc("SaveEditMail", 0, 1 );
if(#r) readonlyswitch;
if(#b) browsemodeswitch;
#total = #total - 1;
}
#n = dllfunc( "EnableDraw" );
// 全てのメールを選択(?)
// #n = dllfunc("Export", "C:\\export.txt", "mbox", "log");
// run "C:\\Program Files\\TaskPrize2\\TskPrize.exe /ic:\export.txt";
endmacro;
----
ぱと
|
|