|
これまたヘルプにもどこにも書いてないと思いますが、マクロを実行している
最中に選択したメールは履歴には記録されない仕組みになってまして、結果とし
て「履歴戻り」を使って以前選択してたメールに戻る作戦は使えないです。
僕の方でマクロを書き換えてみたのでそれでどうでしょうか。こちらでテスト
した限りはうまく動きました。
loaddll "TKinfo.dll";
#threadview = dllfunc("IsThreadView");
if( #threadview ) {
#n = dllfunc("SetThreadView", 0);
}
#index = dllfunc("MailIndex");
if( #index < 0 ) {
message "MailIndexがエラーでした。";
endmacro;
}
//1.
$Subject = dllfuncstr("CurrentHeader", "Subject");
$MessageID0 = dllfuncstr("CurrentHeader", "Message-ID:");
//2.
$Subject = midstr($Subject, strrstr($Subject, ":")+1);
while( leftstr( $Subject, 1 ) == " " ) {
$Subject = midstr( $Subject, 1 );
}
$Subject = dllfuncstr("YenEncode", $Subject);
$pack = "(\""+$Subject+"\",target=subject), hilight=0, inmail=0";
#n = dllfunc("SetFindPack", $pack);//検索文字列を強調ON=1
if ( ! dllfunc("FindUp") ) message "Subjectが見つかりません。";
//3.
$MessageID = dllfuncstr("CurrentHeader", "Message-ID:");
#n = dllfunc("SetMailIndex", #index );
#n = dllfunc("BeginEditMail");
#n = dllfunc("SetHeader", "In-Reply-To", $MessageID );
#n = dllfunc("DeleteHeader", "References" );
#n = dllfunc("SaveEditMail", 0, 0 );
if( #threadview ) {
#n = dllfunc("SetThreadView", 1);
}
endmacro;
|
|