SetHeader(2)No.06723
ひろ さん 02/02/18 21:06
 
 秀まるおさん今日は、ひろです。
 SetHeader が AddHeader と同じ動きをするようです。
 次に SetHeader2 に付いてですが、現在の仕様では非常に使いにくいです。
具体的には、ヘッダの表示順が、
From:     ひろ <xxxxxxxx@nifty.ne.jp>
To:       xxxxxxxxxx@maruo.co.jp
Subject:  SetHeader(2)
となっていた場合、To ヘッダを書き換える場合、
#tmp = dllfunc("SetHeader2",$$1,$$2,1);
とする必要があります。第 3 引数は、CurrentHeader2 同様、第 1 引数のヘッ
ダで何番目かを指定できるようにならないでしょうか?
 こちらの環境は、Windows98+IE5.5+鶴亀 Ver.1.62 です。

[ ]
RE:06723 SetHeader(2)No.06736
秀まるお さん 02/02/19 13:28
 
>となっていた場合、To ヘッダを書き換える場合、
>#tmp = dllfunc("SetHeader2",$$1,$$2,1);
>とする必要があります。

 なんか僕の所と動きが違うようです。???

 1つ目を書き換えるなら第3パラメータは0を指定しないとダメなはずです。
1を指定したら何も書き変わらないはずです。

 SetHeaderがうまく動かないという報告もあるし、いったいどこがどうなっ
ているのやら?。

[ ]
RE:06723 SetHeader(2)No.06737
秀まるお さん 02/02/19 13:47
 
 うーむ、やっと原因が分かりました。

 みなさんがダウンロードしてるtk162.exeは、僕としては心外な途中バージ
ョンのtk162.exeでした。

 N3.51サーバー上にファイルを置いた関係で、タイムスタンプが壊れてしま
っていて、新しいバージョンがアップロードされてませんでした。

 さっそくV1.63をアップロードしてしまいます。

[ ]
RE:06723 SetHeader(2)No.06738
秀まるお さん 02/02/19 13:59
 
 とりあえずV1.63アップロードしました。

 バグ修正は続行します。

[ ]
RE:06736 SetHeader(2)No.06743
ひろ さん 02/02/19 17:31
 
 秀まるおさん今日は、ひろです。
 草稿フォルダの「(+)」共々 Ver.1.63 で問題ないことを確認しました。

 P.S hidesoft.8:05411 にて
>    #n = dllfunc("SetHeader", "To", "xxx@xyz.com");
とありますが、ヘルプには
> SetHeader関数およびAddHeader関数の返す値は文字列型であり、常に""を返します。
とあります。どちらが正解でしょう?
 ##おそらく何方でも良いのでしょうね。

[ ]
RE:06743 SetHeader(2)No.06744
秀まるお さん 02/02/19 17:53
 
>>    #n = dllfunc("SetHeader", "To", "xxx@xyz.com");
>とありますが、ヘルプには
>> SetHeader関数およびAddHeader関数の返す値は文字列型であり、常に""を返します。

>とあります。どちらが正解でしょう?

 文字列型を返すので、dllfuncstrで呼び出して$s等に代入するのが正解です。
でもこういう使い方も出来てしまいます。

 (って、秀丸エディタの内部を知ってるから出来ることですが)

 文字列変数を返す関数は、文字列の先頭アドレスを返します。そういう関数
をdllfuncで呼び出して#nに代入すると、#nには文字列のアドレスそのものが
代入されます。

 どうせ結果は見ないので、そういう呼び出しをしても特に問題は起きません。

[ ]
RE:06744 SetHeader(2)No.06745
ひろ さん 02/02/19 18:21
 
 秀まるおさん今日は、ひろです。
>  文字列変数を返す関数は、文字列の先頭アドレスを返します。
 やはりそういう作りなのですね。

 ##アドレスを受け取っても、マクロでは何も出来ないから、返り値が意味の
ない部分は私もこれを使おうかなあ〜。

[ ]