ヘッダ内容取得
No.35830
うえむ
さん 09/03/10 21:26
こんにちは、いつもいろいろとお世話になります。
質問です。秀丸メールで下記マクロを実行しました。
$to = dllfuncstr("RootHeader", "To");
$toの期待値としては今開いているメールのTo:に羅列されている文字列なのですが、
いつも""(空っぽ)が入ります。
メール冒頭の例
To: xxxx@aa.bb
上記マクロ実行後の$toへの返り値、""
合ってますか?
[
△
]
RE:35830 ヘッダ内容取得
No.35831
Iranoan
さん 09/03/10 21:52
うえむさん今日は、Iranoan です。
念の為お断りしておくと、開発者とは何の関わりも無い単なる一ユーザです。
> $to = dllfuncstr("RootHeader", "To");
ヘルプから引用しますと、
> RootHeader関数は、元メールのヘッダ部分から任意のヘッダを検索して、
> その値部分を返します。
です。つまり返信/転送元メールのヘッダです。ですからこれらが存在しない
新規のメールでは空になります。
> $toの期待値としては今開いているメールのTo:
ということなら、CurrentHeader/CurrentHeader2() 関数を使いましょう。
[
△
]
RE:35831 ヘッダ内容取得
No.35835
うえむ
さん 09/03/11 09:29
Iranoanさん
CurrentHeaderで思うことができました。見落としていました。。
ちなみに("RootHeader", "To")でも同じことができるように見えますが、結果は初回
の記事の通りでした。もちろんTo:欄にはアドレスを書いています。
ありがとうございました。
[
△
]
RE:35835 ヘッダ内容取得
No.35836
K'zawa
さん 09/03/11 11:04
うえむさん、こんにちは。
K'zawaです。
>ちなみに("RootHeader", "To")でも同じことができるように見えますが、結果は初回
>の記事の通りでした。もちろんTo:欄にはアドレスを書いています。
実行した返信メールは保存したものでしょうか?
基本的には、RootXXXX が使えるのは、返信コマンド等でエディタを開いた場合
のみで、一度保存して開き直したりした場合は使えません。
それでも使いたい場合は、LoadRootMail関数を使って元メールをロードする必要
があります。詳しくは LoadRootMail関数 のヘルプをご覧ください。
[
△
]