返信の際、アドレス関連のヘッダをアドレNo.16283
ながは さん 04/01/20 20:26
 
ながはです。

こちらへの投稿でよいのか、ちょっと自信がないのですが、過去ログ
検索でも見つからなかったので、教えてください。

返信メールを作るときにTo:は、元メールの記載を引き継ぐため、
元メールが、「ながは <xxxxxxxx@mogemoge.com>」のような形式だと
そのままになってしまいます。

これをメールアドレスだけ、つまり「xxxxxxxx@mogemoge.com」のように
してヘッダにセットするようなことは可能でしょうか?

個人的な嗜好といえばそうなのですが、ヘッダ中のメールアドレスに
個人名などが入らない方が好みなので、新規作成する場合は、アドレス
帳の設定でその様にしてあるのですが、返信メールはどうしても、
元メールを引き継いでしまうので、何とかしたいと思った次第です。

[ ]
RE:16283 返信の際、アドレス関連のヘッダNo.16285
MAKOPI さん 04/01/20 21:28
 
こんにちは。MAKOPIです。

>これをメールアドレスだけ、つまり「xxxxxxxx@mogemoge.com」のように
>してヘッダにセットするようなことは可能でしょうか?

以下のマクロでどうですか?

//-------- 名前削除.mac ---------------------------------
if( readonly )         //上書き禁止か?
{
message "上書き禁止です。";
endmacro;
}

loaddll "TKInfo.dll";
if( !result )
    endmacro;

disabledraw;            // 描画禁止

call DeleteNameSpace("To");
call DeleteNameSpace("Cc");

endmacro;


DeleteNameSpace:
##HeaderMax = dllfunc("CountCurrentHeader",$$1);
##HeaderCount = 0;
while(##HeaderCount < ##HeaderMax)
{
    //// ヘッダ分繰り返し
    $$AddrssList = dllfuncstr("CurrentHeader2",$$1,##HeaderCount);
   
    ##ListMax =  dllfunc("CountEmailList", $$AddrssList);
    ##ListCount = 0;
    $$AllEmailAdd = "";
    $$Delimiter  = "";
    while(##ListCount < ##ListMax)
    {
        //// アドレス数分繰り返し
        $$Address = dllfuncstr("GetEmailList", $$AddrssList, ##ListCount);
        $$EmailAdd = dllfuncstr("SetEmailOnly",$$Address);
        $$AllEmailAdd = $$AllEmailAdd + $$Delimiter + $$EmailAdd;
        $$Delimiter = ", ";
        ##ListCount = ##ListCount + 1;
    }
    if($$AllEmailAdd != "")
    {
        $$s = dllfuncstr("SetHeader2",$$1,$$AllEmailAdd,##HeaderCount);
    }
    ##HeaderCount = ##HeaderCount + 1;
}
return;
//-------- ここまで ---------------------------------

返信用テンプレートに

$(ExecMacro,"名前削除.mac")$-

とでもしてみてください。

[ ]
RE:16283 返信の際、アドレス関連のヘッダNo.16286
にのじ さん 04/01/20 21:31
 
>返信メールを作るときにTo:は、元メールの記載を引き継ぐため、
>元メールが、「ながは <xxxxxxxx@mogemoge.com>」のような形式だと
>そのままになってしまいます。
>
>これをメールアドレスだけ、つまり「xxxxxxxx@mogemoge.com」のように
>してヘッダにセットするようなことは可能でしょうか?
>
 一ユーザーのにのじです。

 以下のマクロを「マクロ・マクロ登録・自動起動・送信用のエディタ起動時に
登録」に設定すれば、ご希望の動作になると思います。

 以前、どなたかが作られたのを使わせてもらっており、とても重宝しています。



//-------- 名前削除.mac ---------------------------------
if( readonly )         //上書き禁止か?
{
message "上書き禁止です。";
endmacro;
}

loaddll "TKInfo.dll";
if( !result )
    endmacro;

disabledraw;            // 描画禁止

call DeleteNameSpace("To");
call DeleteNameSpace("Cc");

endmacro;


DeleteNameSpace:
##HeaderMax = dllfunc("CountCurrentHeader",$$1);
##HeaderCount = 0;
while(##HeaderCount < ##HeaderMax)
{
    //// ヘッダ分繰り返し
    $$AddrssList = dllfuncstr("CurrentHeader2",$$1,##HeaderCount);
   
    ##ListMax =  dllfunc("CountEmailList", $$AddrssList);
    ##ListCount = 0;
    $$AllEmailAdd = "";
    $$Delimiter  = "";
    while(##ListCount < ##ListMax)
    {
        //// アドレス数分繰り返し
        $$Address = dllfuncstr("GetEmailList", $$AddrssList, ##
ListCount);
        $$EmailAdd = dllfuncstr("SetEmailOnly",$$Address);
        $$AllEmailAdd = $$AllEmailAdd + $$Delimiter + $$EmailAdd;
        $$Delimiter = ", ";
        ##ListCount = ##ListCount + 1;
    }
    if($$AllEmailAdd != "")
    {
        $$s = dllfuncstr("SetHeader2",$$1,$$AllEmailAdd,##HeaderCount);
    }
    ##HeaderCount = ##HeaderCount + 1;
}
return;
//-------- ここまで ---------------------------------

[ ]
RE:16285 返信の際、アドレス関連のヘッダNo.16288
ながは さん 04/01/20 23:33
 
MAKOPIさん、こんにちは。ながはです。
>
>以下のマクロでどうですか?

早速のご教授深謝です。

便乗質問でしかも、マクロのことなので場違いなのですが、既に
テンプレートを自動書き換えする別のマクロを送信用エディタ立上時の
自動実行に使っているので、テンプレートからマクロを実行させるよ
り、教えて頂いたマクロと前述のマクロを連続で自動起動させたいと思
うのですが、どうしたらよいでしょう?


[ ]
RE:16288 返信の際、アドレス関連のヘッダNo.16289
ながは さん 04/01/20 23:39
 
ながはです。
自己れすです。

>自動実行に使っているので、テンプレートからマクロを実行させるよ
>り、教えて頂いたマクロと前述のマクロを連続で自動起動させたいと思
>うのですが、どうしたらよいでしょう?


ちょっと考えたら、
execmacro "名前削除.mac";
execmacro "別のマクロ.mac";
ってマクロを組んだらちゃんとできました!

生まれて初めて自分で組んだマクロです(笑)

お騒がせしました。

[ ]