|
けんいちさん今日は、ひろです。
> ですが、ここら辺は使う人の考え方もあると思いますので、マクロファイル中
> の変数等で2段目のメッセージを出すかどうか設定できるとよいのかなとは思い
> ます。
それでは取り敢えずマクロをアップしますが、必ずバックアップを取って
から使ってください。また別件でこの添付ファイルを保存しているフォルダ
の命名方法に不備が見つかっています。詳細は、
http://www.maruo.co.jp/turukame/1/m020608.html#7449
のスレッドを見て頂き、この点に注意していただかないと、思わぬ添付ファ
イルが削除されれかねませんので、注意してください。
//---------------- delete attachment file ---------------------------
loaddll "tkinfo.dll";
if( dllfunc("IsThreadView") ) {
message "スレッド表示だと実行できません。";
goto End;
}
#viewarea = dllfunc("ViewArea");
if( #viewarea != 5 ) {
#n = dllfunc("SetViewArea", 5);
}
#total = dllfunc("MailCount");
if( #total == 0 ) {
message "添付ファイル付きメールが1つもありません。";
#n = dllfunc("SetViewArea", #viewarea );
goto End;
}
#tmp = dllfunc( "SetFindPack","flag=unread|mark|color, inmail=0" );
if( !dllfunc( "FindDownInclude" ) ){
if( !dllfunc( "FindUpInclude" ) ){
question "未読、マーク、色付きメールがありません。\nマクロを終了しますか?";
if( result )goto End;
}
}
#i = 0;
while( #i < #total ) {
#n = dllfunc("SetMailIndex", #i );
#i = #i + 1;
if( dllfunc( "GetMailFlag","unread") | dllfunc( "GetMailFlag","mark") |
dllfunc( "GetMailColor" ) )continue;
#x = 0;
$attach = dllfuncstr("CurrentHeader", "X-Attach");
if( $attach != "" ) {
$src = dllfuncstr("HomeDir") + dllfuncstr("CurrentAccount")
+ "\\" + $attach;
// フォルダ名のみに変換する。
#xFolder = -1;
#xFile = -1;
while(1) {
#x = strstr( midstr( $src, #xFile + 1, 256 ), "\\" );
if( #x < 0 ) {
break;
}
#x = #x + #xFile + 1;
#xFolder = #xFile;
#xFile = #x;
}
$src = leftstr( $src, #xFile );
if( existfile( $src ) )runsync2 "deltree.exe /Y \"" + $src + "\"";
}
}
#n = dllfunc("SetViewArea", #viewarea );
End:
freedll;
endmacro;
|
|