|
夜分恐れ入ります。Fzok4234 です。
さて、refcall で呼び出したサブルーチンの文字列引数を execmacro のマクロファ
イル名として
指定すると、この引数の値が空文字列に化けてしまいます。
再現マクロの Main.mac および Sub.mac は以下の通りです。
// Main.mac
debuginfo 2 ;
$subMacroPath = currentmacrodirectory + @"\Sub.mac";
refcall RefCall $subMacroPath ;
endmacro ;
RefCall :
debuginfo @"Before : " + $$1 + "\U0000000A" ;
execmacro $$1 ;
debuginfo @"After : " + $$1 + "\U0000000A" ;
return ;
// Sub.mac
endmacro ;
上記の Main.mac を実行すると
Before : c:\users\********\desktop\hidemac\bug\20230216\refcall\Sub.mac
After :
と出力されます。RefCall サブルーチンの引数 $$1 が、execmacro に渡す前は正し
い値ですが、
execmacro に渡した後は空文字列として評価されてしまいます。
秀丸エディタは 9.20 Float x64 正式版です。
|
|