送信時の添付ファイル確認No.02626
かめ さん 01/08/07 18:47
 
送信時に確認ダイアログを出すマクロを作成しました。
ついでに添付ファイルがあるか確認しようと思いましたがうまくいきません。良い方
法があるのでしょうか。

ちなみに下記のマクロでは,どうも受信したメールの添付ファイルを
確認するようなのでうまくいきません。

loaddll "tkinfo.dll";
#s = dllfunc("CurrentHeader", "X-Attach");
if(#s == 0) {
question "添付ファイルがありません。本当に送信していいですか?";
if(result == no) {
#n = dllfunc("SetCancel", 1);
}
} else {
question "添付ファイルがあります。本当に送信していいですか?";
if(result == no) {
#n = dllfunc("SetCancel", 1);
}
}

[ ]
RE:02626 送信時の添付ファイル確認No.02633
ひろ さん 01/08/07 19:33
 
 かめさん今日は、ひろです。
> ついでに添付ファイルがあるか確認しようと思いましたがうまくいきません。良い方
 CurrentHeader が返すのは文字列系ですよ。

$s = dllfuncstr("CurrentHeader", "X-Attach");
if($s == ""){
//以下略
という処理にしてください。

[ ]
RE:02633 送信時の添付ファイル確認No.02637
かめ さん 01/08/08 11:01
 
>$s = dllfuncstr("CurrentHeader", "X-Attach");
>if($s == ""){
>//以下略
>という処理にしてください。

helpをよく見たら関数の使い方が誤っていました(^^;

ファイル名を返すのが
$s = dllfuncstr("CurrentHeader", "X-Attach");
ファイルの個数を返すのが
#n = dllfunc("CountCurrentHeader", "X-Attach");
ですね。

今回の場合,個数の方が良いと思うので次のようにしました。
loaddll "tkinfo.dll";
#n = dllfunc("CountCurrentHeader", "X-Attach");
if(#n == 0) {
 question "添付ファイルがありません。本当に送信していいですか?";
 if(result == no) {
  #n = dllfunc("SetCancel", 1);
 }
} else {
 question "添付ファイルがあります。本当に送信していいですか?";
 if(result == no) {
  #n = dllfunc("SetCancel", 1);
 }
}

[ ]