|
>常駐していると、起動してから受信したメールが新着として
>アイコンが変わったままずっと残ることになります。
>(最近の分の話ではありません)
>適当なタイミングでこの新着フラグ?をリセットしたいのですが、
>できるのでしょうか。
亀レスで恐縮ですが、V1.74以降で新着フラグ操作がマクロで可能となりましたので、
新着フラグをセット/クリヤするマクロを作成してみました。
よかったら参考にしてください。
//-- hotflag.mac
loaddll "tkinfo.dll";
#tkver = dllfunc("TuruKameVersion") ;
if ( #tkver < 174 ) {
message "新着フラグの操作を行うには鶴亀メールVer1.74以降が必要です。";
goto TurukameEnd ;
}
menu
"<< 新着フラグの操作 >>" ,
"&L 新着メールを検索して一覧作成",
"&0 今日受信したメールのセット",
"&1 昨日から受信したメールのセット",
"&2 n日前から受信したメールのセット",
"&3 今日までに受信したメールのクリヤ",
"&4 昨日までに受信したメールのクリヤ",
"&5 n日前までに受信したメールのクリヤ",
"&Q 終了";
#sw=result;
if(#sw == 2) {
$$restorefindpack = dllfuncstr("GetFindPack");
##n = dllfunc("SetFindPack", "flag=!send&hot,subfolder=1,inmail=3") ;
##n = dllfunc("DoGrep","","受信+送信済み") ;
##n = dllfunc("SetFindPack", $$restorefindpack ) ;
}
if(#sw == 3) call set_hot_flag , 1, 0 ;
if(#sw == 4) call set_hot_flag , 1, 1 ;
if(#sw == 5) {
$$n = input( "何日前までに受信したメールの新着フラグをクリヤしますか。","2" );
if ( result ) call set_hot_flag , 0, val($$n) ;
}
if(#sw == 6) call set_hot_flag , 0, 0 ;
if(#sw == 7) call set_hot_flag , 0, 1 ;
if(#sw == 8) {
$$n = input( "何日前から受信したメールの新着フラグをセットしますか。","2" );
if ( result ) call set_hot_flag , 1, val($$n) ;
}
TurukameEnd:
freedll;
endmacro;
//-- subroutine
// パラメータ : ##1 フラグ値
// ##2 クリヤしない日数
set_hot_flag:
##flg = ##1;
##keep = ##2;
$$restoreaccount= dllfuncstr( "CurrentAccount" ) ;
$$restorefolder= dllfuncstr( "CurrentFolder" ) ;
$$restorefindpack = dllfuncstr("GetFindPack");
##n = dllfunc( "DisableDraw" );
if ( ##flg ) {
##n = dllfunc("SetFindPack", "flag=!send&!hot&transmit=" + str(##keep) +"日
前-,subfolder=1,inmail=3") ;
} else {
##n = dllfunc("SetFindPack", "flag=!send&hot&transmit=-" + str(##keep) +"日
前,subfolder=1,inmail=3") ;
}
while ( dllfunc("FindDown") ) {
##n = dllfunc( "SetMailFlag", "hot" , ##flg ) ;
}
##n = dllfunc( "SelectFolder", $$restoreaccount, $$restorefolder );
while ( dllfunc("FindUp") ) {
##n = dllfunc( "SetMailFlag", "hot" , ##flg ) ;
}
##n = dllfunc( "SetFindPack", $$restorefindpack ) ;
##n = dllfunc( "SelectFolder", $$restoreaccount, $$restorefolder );
##n = dllfunc( "EnableDraw" );
return ;
//-- ここまで
|
|