マクロの実行で異常終了No.03963
ひろ さん 01/02/18 23:10
 
 秀まるおさん今日は、ひろです。
 どうやらあまり大きなマクロを実行すると異常終了するようです。問題な
く動作していたマクロを改良のため、サブルーチンをコピー&ペーストによ
る変更をしただけのマクロを実行すると以下のエラーを出力します。
21:49:44.150 ( 674) 鶴亀開始
21:49:45.520 (4443) StartAutoDownTimer()
21:49:45.520 (4451) StartAutoDownTimer() set
21:49:45.520 (4443) StartAutoDownTimer()
21:49:45.520 (4451) StartAutoDownTimer() set
21:49:45.630 (3773) ProcessCommand 40024
21:49:45.630 (2920) EnterTrans(), dwRet = 0
21:49:45.630 (2928) EnterTrans() entered
21:49:45.630 (1842) ProcessTransmitSub()
21:49:45.630 (4065) DialogBox2Param() template=259
21:49:45.630 (1752) Pop3PasswordDlgProc() WM_INITDIALOG
21:49:46.290 (4067) DialogBox2Param() exit
21:49:46.290 (2933) LeaveTrans()
21:49:46.290 (4443) StartAutoDownTimer()
21:49:46.290 (4451) StartAutoDownTimer() set
21:49:47.780 (3773) ProcessCommand 42002
********** 01/02/18 21:49:48 0.79beta  Exception
eax=83663000 ebx=0000B487 ecx=021CCB74 edx=0000006C esi=BFF9B38C edi=021C1BB0 ebp=006CE8EC esp=006CE8DC eip=02106646
FramePtr ReturnAd Param#1  Param#2  Param#3  Param#4  Param#5  Param#6  Param#7  Param#8  Param#9  Param#10 MachineCode
006CE918 02105D94 006CE914 006CE910 0210DBC8 00000138 00000005 006CE920 021069DB 021CCB55 83662FFE 006CE950 59 59 85 C0 75 0F 6A 0B (2143) call UnquoteCopy
006CE950 02104D5E 0210EEF8 0210DDA8 00000003 0000B487 005A0101 0210CCEA 000000EA 0210BD28 00000028 00007FE7 59 59 85 C0 75 08 83 C8
006CE980 10049EE5 00000B48 00482790 021C1BB0 0000B487 8365B000 00008000 00000000 01105506 00008000 00000B48 8B 35 30 5A 08 10 8B D8
006CEA70 100520CD 00482790 00000058 8365B000 00008000 00482790 01105506 00000000 00000001 000010A6 0000000B 8B F8 FF 75 FC FF 15 58 record.cpp(5516) call CallLoadMacro
006CEAD8 10052246 00482790 00000111 01105506 1002E591 00482790 00000111 00CF000C 00000000 00B20024 000003EC 85 C0 74 32 8B D7 8B CE record.cpp(5577) call LoadMacro
006CEAF0 00434F37 01100078 00000002 00482790 00000000 006CF69C 0043168B 00482790 00000111 00000111 006CF828 6A 01 58 5E 5D C2 04 00 CHidemaruCtrl::ExecMacroFile
006CF69C 0043168B 00482790 00000111 00000111 006CF828 0000000C 00000026 006CEB3C BFB75B3E 0000093E 006CEB98 6A 01 58 E9 9F F6 FF FF
006CF7DC BFF7F5DA 00469F88 00000000 006CFD9C 5F5C3A44 6F726948 69616D5C 75645C6C 742E706D 81007478 030B0067 8B C3 5F 5E 5B 8B E5 5D
00000000 00469F88 00000000 00469F88 00000000 00469F88 00000000 00469F88 00000000 00469F88 00000000 00469F88 C9 C3 55 8B EC 81 EC 14
43452031 00343120 30203030 00469F88 00000000 006CFD9C 43203943 35352033 20423820 38204345 43452031 00343120 8B 7E 04 59 6A 08 57 FF
006CFDAC 0045C273 0000000A 00000000 81727074 005D0000 00000A64 00000111 0000A412 00000000 006781D5 0000030B 59 E8 00 68 00 00 68 10
006CFE38 004649EF 00400000 00000000 81727074 00000001 00000000 8173C044 005D0000 00000000 81727074 BFFC9490 89 45 A0 50 E8 38 14 00
006CFF78 BFF8B6BE 00000000 8173C044 005D0000 75727554 656D616B 45584500 00000000 00000000 00000000 00000000 89 45 D8 EB 1A FF 75 EC
006CFFF4 BFF8B570 8173E490 8173C044 00000008 00000000 00000000 00000000 00000000 00000000 00000000 00000000 A1 DC 9D FC BF 8B 00 83

[ ]
RE:03963 マクロの実行で異常終了No.03984
ひろ さん 01/02/19 18:30
 
 秀まるおさん今日は、ひろです。自己レスです。
>  どうやらあまり大きなマクロを実行すると異常終了するようです。問題な
 必要であれば、問題のマクロをお送りします。またこちらの環境は
Windows98+鶴亀Ver.0.79 の複数のハードで起きます。

[ ]
RE:03984 マクロの実行で異常終了No.03999
秀まるお さん 01/02/20 11:06
 
 まいどどうも。調べてみたら、hidemac.dllで死んでました。たぶん秀丸でも同じ
ように死ぬと思います。

 マクロ用のメモリが32キロバイトあって、それを越えてまして、普通は越えてもエ
ラーメッセージが出るだけで死ぬことはないはずなんですが、たまたま容量チェック
してない処理があって、都合良くそこが32キロバイトの境界部分に当たって死んでま
した。

 秀丸の方もいいかげん安定させないといけない時期で、いまさら安定していた
hidemac.dllをいじるのは怖いということで、とりあえず、マクロ用のメモリを64キ
ロバイトに増やして対処させていただくことにします。

[ ]
RE:03999 マクロの実行で異常終了No.04006
ひろ さん 01/02/20 12:30
 
 秀まるおさん今日は、ひろです。
>  マクロ用のメモリが32キロバイトあって、それを越えてまして、普通は越えてもエ
 ファイルが大きい、しかもサブルーチンが 44 個も有るので(^^;、おそら
くそういったことが原因で、「いよいよファイルを分割しないと駄目かな
あ〜」と考えていました。

>  秀丸の方もいいかげん安定させないといけない時期で、いまさら安定していた
> hidemac.dllをいじるのは怖いということで、とりあえず、マクロ用のメモリを64キ
> ロバイトに増やして対処させていただくことにします。
 Ver.80 問題ないことを確認しました。有り難うございます。

 ## これとは別に、やはり分割した方がよいかなあ〜。

[ ]
RE:04006 マクロの実行で異常終了No.04009
秀まるお さん 01/02/20 12:58
 
 秀丸の方もV3.08にてバッファサイズが64キロバイトになります。

>  ## これとは別に、やはり分割した方がよいかなあ〜。

 マクロ実行する度に毎回ロード/変換などすることになるので、なるべく分けた方
がいいと思います。

[ ]
RE:04009 マクロの実行で異常終了No.04012
ひろ さん 01/02/20 16:11
 
 秀まるおさん今日は、ひろです。
>  マクロ実行する度に毎回ロード/変換などすることになるので、なるべく分けた方
> がいいと思います。
 そうですよね。
 だけど execmacro では引数が渡せないし、グローバル変数もクリアされ
るんだよなあ〜。

[ ]