SaveEditMail と Message-IDNo.08349
ひろ さん 03/02/03 00:20
 
 秀まるおさん今日は、ひろです。
 エディタ・ウィンドウを開いて、編集後保存をすると、「送信メール」であ
れば、同時に Message-ID が更新されます。しかし SaveEditMail を用いた場
合、更新されません。この仕様では、
http://www.maruo.co.jp/turukame/2/m030109.html#6212

>  例えば、送信済みメールをエディタで開いて何か手を加えた後に、「今すぐ送
> 信」とした場合、元のMessage-Idヘッダのまま送ってしまうと同じMessage-Idな
> のに内容の違うメールが届いてしまうことになります。
と同じ問題が起きるので、良くないのではないでしょうか? ただし「受信メー
ル」は、現状どうりで構いません。
 こちらの環境は、Windows98+IE6.0+鶴亀 Ver.2.36 です。

[ ]
RE:08349 SaveEditMail と Message-IDNo.08359
秀まるお さん 03/02/03 15:17
 
 SaveEditMailは改変保存用なので、現状の仕様でないとまずいと思います。特
に送信済みフォルダのメールを改変保存してMessage-Idが変わってしまったんで
は非常に困るはずです。

[ ]
RE:08359 SaveEditMail と Message-IDNo.08365
ひろ さん 03/02/03 17:52
 
 秀まるおさん今日は、ひろです。
>  SaveEditMailは改変保存用なので、現状の仕様でないとまずいと思います。
 成る程、改変保存用なのですね。
 ただ現状だと、送信メールをコピーし、片方だけこれらを使って編集しても
Message-ID は変わりません。これではやはり
> > 同じMessage-Idな
> > のに内容の違うメールが届いてしまうことになります。
ということが起きます。SaveEditMail 関数に Message-ID も変更するなどの
オプションを追加するなど、何か対処が欲しいところです。

[ ]
RE:08365 SaveEditMail と Message-IDNo.08368
秀まるお さん 03/02/03 18:25
 
> ただ現状だと、送信メールをコピーし、片方だけこれらを使って編集しても
>Message-ID は変わりません。

 それらすべての作業をマクロでやるのなら、マクロでSaveMail文を使えばいい
と思うし、普通に作ったらそっちを使うと思います。SaveEditRecvで保存するの
なら、それは改変保存のつもりと解釈すべきだと思います。

 普通に使う人が間違って重複したMessage-Idのメールを送ることがないように
するのがそもそもの話のはずなので、今回のような特殊なケースにまで対応する
必要は無いと思います。たぶん、こんな難しいことを思いつくのはひろさんくら
いだと思うし、現状こういう会話がここであったらそれで十分だと思います。

[ ]
RE:08368 SaveEditMail と Message-IDNo.08369
ひろ さん 03/02/03 18:46
 
 秀まるおさん今日は、ひろです。
>  それらすべての作業をマクロでやるのなら、マクロでSaveMail文を使えばいい
> と思う
 SaveMail とはどういう関数でしょう? 少なくともマクロもマクロ・ヘルプ
のキーワードには有りません。
 ##SaveDraft 等の勘違い?

>  普通に使う人が間違って重複したMessage-Idのメールを送ることがないように
> するのがそもそもの話のはずなので、今回のような特殊なケースにまで対応する
> 必要は無いと思います。
 これは確かにそうで、特殊な例です。事の発端は、今作っている配信予約マ
クロで、エディタ・ウィンドウを開かず、ヘッダを編集し、なおかつ
Message-ID を変更したいのです。適当に
#tmp = dllfunc( "SetHeader", "Message-ID", $s );
としてしまうと、重複した Message-ID 割り振りそうなんですよね(^^;。
 ##何か重複しないように、Message-ID を振る方法は無いものかなあ〜。

[ ]
RE:08369 SaveEditMail と Message-IDNo.08373
秀まるお さん 03/02/04 09:27
 
> SaveMail とはどういう関数でしょう? 少なくともマクロもマクロ・ヘルプ
>のキーワードには有りません。

 すみません。そんな関数はありませんでした。送信済みメールを編集して送信
するってことならSendLaterが相当するようです。

 Message-Idを割り振る適当な方法ですが、鶴亀メール内部にメッセージIDを生
成する関数があります。それをtkinfo.dllに提供します。

    $from = dllfuncstr("CurrentHeader","From");
    $id = dllfuncstr("CreateMessageId", $from);
    #n = dllfuncstr("SetHeader", "Message-Id", $id);

[ ]
RE:08373 SaveEditMail と Message-IDNo.08374
秀まるお さん 03/02/04 09:41
 
 間違えました。

    $from = dllfuncstr("CurrentHeader","From");
    $from = dllfuncstr("SetEmailOnly",$from);
    $id = dllfuncstr("CreateMessageId", $from);
    #n = dllfuncstr("SetHeader", "Message-Id", $id);

 でないとダメってことにします。

[ ]
RE:08373 SaveEditMail と Message-IDNo.08378
ひろ さん 03/02/04 17:42
 
 秀まるおさん今日は、ひろです。
> > SaveMail とはどういう関数でしょう? 少なくともマクロもマクロ・ヘルプ
> >のキーワードには有りません。
>
>  すみません。そんな関数はありませんでした。送信済みメールを編集して送信
> するってことならSendLaterが相当するようです。
 そうですか、知らぬ間に新しい関数が追加されたのかと思いました(^^)。

>  Message-Idを割り振る適当な方法ですが、鶴亀メール内部にメッセージIDを生
> 成する関数があります。それをtkinfo.dllに提供します。
 有り難うございます。これで何とかなりそうです。

[ ]