マクロ中のボタン押下No.00805
かかし さん 99/10/24 11:48
 
かかしです、こんにちは。

ある「F1」ボタンに割り当ててある
マクロを実行している途中、ふたたびF1ボタンを押すと
マクロがどっかに飛んでいってしまって、それ以降
エディタとしては、秀丸は正常に動くのですが
マクロを実行すると「ほかのマクロが実行中です」と
エラーが出てしまいます。

なんとか、マクロの実行中にキー操作が無効にすることが
できないでしょうか?

[ ]
RE:00805 マクロ中のボタン押下No.00806
番頭++ さん 99/10/25 11:13
 
>なんとか、マクロの実行中にキー操作が無効にすることが
>できないでしょうか?

disablebreak;//でいけませんか !!!
「 enablebreak文はありません。」...


[ ]
RE:00806 マクロ中のボタン押下No.00807
かかし さん 99/10/25 13:07
 
かかしです、番頭++さんこんにちは。

>>なんとか、マクロの実行中にキー操作が無効にすることが
>>できないでしょうか?
>
>disablebreak;//でいけませんか !!!
>「 enablebreak文はありません。」...

やってみましたが、どうもうまくいきませんでした。
具体的な話をしますと・・・

電信八号というソフト(メーラ)のDDEを使って
ステータスを変更したりしているのですが、
(届いたメールを見てそのメールのステータスを「既読」にして
次のメールを開く)
何通もある時、マクロを続けて実行(「F1」を連打)すると、
マクロがどっかにいってしまいます。
電八のDDE処理の間にマクロ実効命令が割り込まれるためかなあ、
と思っているのですが・・・。


[ ]
RE:00807 マクロ中のボタン押下No.00808
番頭++ さん 99/10/25 13:54
 
>やってみましたが、どうもうまくいきませんでした。
>具体的な話をしますと・・・

「 disablebreak文をマクロのいちばん最初で実行する ...」でダメだと、
これ以外の機能は、マクロには無いような気がします。Help ...

[ ]
RE:00808 マクロ中のボタン押下No.00809
かかし さん 99/10/26 12:51
 
こんにちは、番頭++さん、かかしです。

>「 disablebreak文をマクロのいちばん最初で実行する ...」でダメだと、
>これ以外の機能は、マクロには無いような気がします。Help ...

うーん、そうですか、ありがとうございました。

[ ]
RE:00809 マクロ中のボタン押下No.00811
秀まるお さん 99/10/27 09:51
 
 DDEを含むマクロでdisablebreakしているにも関わらずキー入力が有効となって
しまうのは、実は秀丸側のバグです。DDEの最中にどうしてもメッセージループが
回ってしまう(DDE Management Libraryの中で回ってしまう)ので、そのときに
届くキーボード関係のメッセージを無視する処理が必要なのでした。

 秀Term側ではだいぶ前に対応していたんですが、秀丸ではまだ対応してませんで
した。

 次の版から直る予定です。(っというレスを秀丸担当がする予定だったんだけど)


[ ]
RE:00811 マクロ中のボタン押下No.00812
かかし さん 99/10/27 22:41
 
秀まるおさん、はじめまして。
かかしです。

> DDEを含むマクロでdisablebreakしているにも関わらずキー入力が有効となって:
>届くキーボード関係のメッセージを無視する処理が必要なのでした。

そうだったんですか。

> 秀Term側ではだいぶ前に対応していたんですが、秀丸ではまだ対応してませんで
>した。

秀Termを使えば望みのマクロを作れそうですが、
処理が遅くなりそうなので、↓

> 次の版から直る予定です。(っというレスを秀丸担当がする予定だったんだけど)

次のバージョンに期待させていただきます。

ありがとうございました。

[ ]