過去の桐井戸端BBS (桐ver.8)
29847 フォームから特定の一括処理を実行するとCPU使用率が100%になる たかはし 2005/05/05-23:48
A.wfm 上の7つのコマンドボタンに 1.cmd 〜 7.cmd を割り当てています。
このうち 1.cmd 〜 3.cmd だけが以下のような動きをします。

 A.wfm から1回目に(=他の一括処理を実行する前に)実行すると
 1.cmd 〜 7.cmd はすべて「ほぼ」正常に動作するが
 他の一括処理(自分自身も含む)を実行・終了後に実行すると
 1.cmd 〜 3.cmd だけがCPU使用率が100%になってしまう
 つまり・・・・
  1(○)→4(○)→5(○)→・・・→2(×)
  1(○)→1(×)
  1(○)→2(×)
  4(○)→1(×)
  4(○)→4(○)→5(○)

 「ほぼ」と書いたのは、1.cmd〜3.cmdだけ、フォームから実行すると
 ウィンドウのサイズが少し小さくなってしまうのです。もちろん
 一括処理の中にウィンドウサイズを変更するコマンドは入れてません
 
 1.cmd 〜 7.cmd の一括処理は、単独では正常に動作している

 Windowsのタスクマネージャで見ると
 正常時はどのコマンドボタン(=一括処理)を動作させても
 「桐 - A.wfm」と表示されるだけだが
 1.cmd 〜 3.cmd を他の一括処理を実行・終了後に実行すると
 「桐 - 一括処理実行:1.cmd」のように表示される(このときCPU100%)

 1.cmd 〜 7.cmd は複製してからコマンドボタンの表題とパラメータだけ
 書き換えたものです


いろいろ試行錯誤しているうちに桐自体にエラーが出るようになり
再インストールをしましたがその後も同じ状況です。

WindowsXP SP1 + 桐Ver8 SP7 です。

明日になったらもう一度フォームを作り直してみるつもりですが
何か心当たりのある方がいればと思って書き込みしました。
よろしくお願いします。

(単独では正常動作するので、各一括処理の内容は書きませんでしたが
 原因特定や対策のために必要であれば、次回、書き込みます)
29848 Re:フォームから特定の一括処理を実行するとCPU使用率が100%になる うにん 2005/05/06-11:43
記事番号29847へのコメント

>A.wfm 上の7つのコマンドボタンに 1.cmd 〜 7.cmd を割り当てています。

これって「シェル実行」ですか?

>このうち 1.cmd 〜 3.cmd だけが以下のような動きをします。

ということであれば、処理内容に依存しているのでしょうから
全部見ないと何とも言えないような。。。

>いろいろ試行錯誤しているうちに桐自体にエラーが出るようになり

管理工学に問い合わせて見た方がいいのかも。

>再インストールをしましたがその後も同じ状況です。

ということは、単にOS環境の問題かもしれませんね。

私は、.cmdを桐に関連付けるのは気持ち悪いのでしていません。
(以前、システムの復元で.cmdが戻される話がありましたが、.grpが
グループファイルになったり、桐の拡張子はWindowsと相性が悪いですね)

29851 自己解決 たかはし 2005/05/06-15:33
記事番号29848へのコメント
うにんさん ありがとうございます。

>>A.wfm 上の7つのコマンドボタンに 1.cmd 〜 7.cmd を割り当てています。
>これって「シェル実行」ですか?

 コマンドボタンの 機能名:開く
          機能パラメータリスト:1.cmd  です。

なんとか解決しました。
> Windowsのタスクマネージャで見ると
> 正常時はどのコマンドボタン(=一括処理)を動作させても
> 「桐 - A.wfm」と表示されるだけだが
> 1.cmd 〜 3.cmd を他の一括処理を実行・終了後に実行すると
> 「桐 - 一括処理実行:1.cmd」のように表示される(このときCPU100%)

調べてみたら、不具合の起こる一括処理だけ 一括処理実行ウィンドウが開いていました。
そこで、一括処理の「ファイル属性」で「一括処理実行表示属性」を開き
「実行ウィンドウを表示する」のチェックが入っていたのを外したら
期待通りの動作をするようになりました。

実行ウィンドウを表示するとなぜ無限ループのようになってしまうのか
理由はわかりませんが、とりあえず動くようになったので 解決 とします。

うにんさんをはじめ、このBBSに関わっている皆様に感謝いたします。
ありがとうございました。

戻る