|
SendNowに失敗すると、たぶん作成した新規メールのウィンドウがそのまま残って
放置されたままマクロが終了するのだろうと思います。
作戦として、
1.「今すぐ送信」に失敗したら、1分待って再試行してみる。
2.それでもダメなら「あとで送信」とだけしてマクロを終了する。
3.「あとで送信」としたメールを次回秀丸メール起動時に送信する用に、秀丸
メール起動時に自動実行するマクロにて、「未送信メールの送信」を実行する。
って作戦でどうでしょうか。
その作戦にするとしたら、マクロは以下のように直せばいいです。
----------改良マクロ--------------------------------------------------------
loaddll "tkinfo.dll";
//1日に1回の処理 ここからが追加
$iniFile = dllfuncstr("HomeDir") + "\\HidemaruMailMacro_DailyMacro.ini";
$dateNow = date;
$datePrev = getinistr( $iniFile, "Date", "Date");
if( $datePrev == $dateNow ) {
//何もしない
endmacro;
}
writeinistr $iniFile, "Date", "Date", $dateNow;
//1日に1回の処理 ここまでが追加
#n = dllfunc("NewMail");
#n = dllfunc("SetHeader", "To:", "1954@gmail.com");
#n = dllfunc("SetHeader", "Subject:", "Live");
gofiletop;
insert "まだ生きてます\n";
#n = dllfunc("SendNow");
#count = dllfunc("SentMailCount");
if( #count == 0 ) {
#n = dllfunc("SetAutoPushTimer", 60, "ok");
message "送信に失敗したので1分待機して再試行します。";
#n = dllfunc("SendNow");
#count = dllfunc("SentMailCount");
if( #count == 0 ) {
//仕方が無いので後で送信
#n = dllfunc("SendLater");
}
}
exit;
----------改良マクロおわり--------------------------------------------------
で、秀丸メール起動時に「送受信 - すべて送信」を実行するマクロは、
loaddll "tkinfo.dll";
#n = dllfunc("StartSendRemainAll");
の2行だけのマクロになります。これを「マクロ - マクロ登録...」の「自動起
動」ページの「秀丸メール起動時」に登録しておけばいいです。
|
|