|
マクロできました。「マクロ - マクロ登録...」の「自動起動」ページの「送信用
のエディタ起動時」の所に登録するか、または返信用/転送用のテンプレートに
$(ExecMacro,"From書き換え.mac")$-
みたいな命令を入れて使ってみてほしいです。
うまく動かない場合は、
//message "....";
となってる所の「//」を取ってメッセージ表示させると、何か解決のヒントが分か
ると思います。
#n = dllfunc("SetHeader", "From", $from);
の所は、
#n = dllfunc("SetHeader", "From", $hit);
のようにしてもいいかもしれません。そうするとFrom:ヘッダはメールアドレスの
みになります。あえてそういう返信の仕方をした方がいいかもしれません。
---------------------------------------------Fromヘッダを別名に変更.mac-----
------------------
loaddll "tkinfo.dll";
#n = dllfunc("LoadAccountProp", dllfuncstr("CurrentAccount"));
$alias = dllfuncstr("GetAccountProp", "szEmailAlias");
if( $alias == "" ) {
message "このマクロを実行するには「アカウント毎の設定・個人情報・詳
細」の「自分用メールアドレスの別名」にご自身のセーフティーアドレスを登録して
ください。";
endmacro;
}
$alias = "," + dllfuncstr("GetAccountProp", "szEmail") + "," + $alias +
","; //自分自身のメールアドレスを前後にコンマが入る形の文字列にする。
$to = dllfuncstr("RootHeaderUnited", "To") + "," + dllfuncstr("RootHeade
rUnited", "Cc");
if( $to == "," ) {
//返信メールでも転送メールでも無い場合
//message "返信メールでも転送メールでも無い";
endmacro;
}
#i = 0;
#count = dllfunc("CountEmailList", $to);
while( #i < #count ) {
$one = dllfuncstr("GetEmailList", $to, #i);
$one = dllfuncstr("SetEmailOnly", $one);
$one = "," + $one + ",";
#x = strstr( $alias, $one );
if( #x >= 0 ) {
if( #x == 0 ) {
//メインのメールアドレスなら何もしない。
//message "メインのメールアドレス";
} else {
//message "From:ヘッダ書き換え";
$hit = midstr( $alias, #x + 1 );
$hit = leftstr( $hit, strstr( $hit, "," ) );
$name = dllfuncstr("SetNameOnly", dllfuncstr("CurrentHeader",
"From"));
if( $name == "" ) {
$from = $hit;
} else {
$from = $name + " <" + $hit + ">";
}
#n = dllfunc("SetHeader", "From", $from);
}
endmacro;;
}
#i = #i + 1;
}
//message "自分のメールアドレス見つからず。";
|
|