バージョンアップ後,マクロが上手く動作No.39627
Y.T さん 22/03/24 11:44
 
「hm899_4_signed.exe」では動作していた自作マクロが,
「hm911_signed.exe」以降では動作しなくなりました.
バージョンダウンして Ver.8.99 に戻すと,再度,動作します.


田楽DLLを用いており,具体的には以下の処理の部分です.
=====
$timestamp1 = dllfuncstr("TIMESTAMPOF","/l " + "\"" + $filename + "\"");
if ($timestamp1 == "")
{
 message "ファイル " + $filename + " が見つかりません。";
 break;
}
=====

従前は「ファイル…が見つかりません。」というメッセージが出ず,
次の処理に移っていました.
バージョンアップ後はこのメッセージが出てくるようになってしまい,
恐らく,ファイル($filename)のタイムスタンプが取得できていないと思われます.

何か対処法はございますでしょうか.
お手数をおかけして恐縮ですが,コメントのほど,よろしくお願い申し上げます.

[ ]
RE:39627 バージョンアップ後,マクロが上No.39630
秀丸担当 さん 22/03/24 12:47
 
おそらく、V9.00以降でカレントフォルダを移動しないのが既定の動作となったのが
影響している可能性が高いです。
$filenameはおそらくフルパスでないファイル名部分だけなのではないかと思います。
[その他]→[動作環境]→[トラブル対策]→[その他のトラブル対策]の下の方にある
「カレントフォルダ移動」は移動する/しないは以前からあったのですが、設定しな
い自動のときは、移動しないように変更がありました。
とりあえず簡単に回避するには、ここを「移動する(従来通り)」にすると従来通りに
なります。

カレントフォルダ移動しないままで動作させるには、directory2+"\\"+$filenameと
いったフルパスの指定にしていただくか、田楽DLLの関数で、
#n = dllfunc("SETCURDIR",directory2);
といったように場所を指定するとできると思います。

[ ]
RE:39630 バージョンアップ後,マクロが上No.39631
Y.T さん 22/03/24 17:34
 
ご指摘のとおりでした.
すんなりと解決しました.
ありがとうございました!
m(_ _)m


[ ]