トップ回答者
WinXP+VB6で動作がまったりします。

質問
-
初めて投稿いたします。
よろしくお願いします。Windows2000+Visual Basic 6.0で開発したアプリケーションをWindowsXPで動かしたいのですが、
動作がだんだんゆっくりになってしまう現象に悩まされています。使用しているXPパソコンにあまりメモリが入っていないため、当初メモリ不足を疑いましたが、
当該アプリケーション動作中に別のアプリケーション(エクスプローラ等)を立ち上げても
ごく普通の速度で動作するため、アプリケーション単体の問題と思います。アプリケーションはテストプログラムで、検査対象との通信内容を良否判定しています。
フォームにFLEXGRIDが貼り付けてあり、通信内容のOK/NGを表示するようになっています。通信はWinsockでUDP通信をしています。
途中、検査物の操作の指示などのため、別フォームを表示させていますが、
音楽を鳴らして検査作業者に知らせるため、フォームにはMMControlが貼り付けてあります。この指示フォームを繰り返し表示させただけで動作がゆっくりになるのはわかったのですが、
どうしても原因が分かりません。OSによって動作が違う、というのがとても気になっています。
どんな内容でも結構です、アドバイスいただけるとうれしいです。
回答
すべての返信
-
こんにちは。フレキシブルGridコントロールはかなり重かったという記憶(印象)がありますね。特に件数が多い場合、動作がにぶくなったと思います。
しかし、Win2000なら許容できたという事なら、やはりメモリー不足のせいでしょう。Win/XPにすれば、最低でも512MBぐらいは欲しい所でしょう、経験値として。アプリによってはもっと多く必要なのは言うまでもありません。 タスクマネジャーでメモリー消費をモニターすれば、ある程度様子が分かるのでは。
どうしてもアプリ側で何とかしたいなら、全件数をFrex.Gridに入れるのでなく、数100件ぐらいとどめるとかも考えられますが、面倒かも。 あるいは思い切ってDataGridコントロールに変える(この場合mdbファイルへの保存が必要だったか?)とか.....
(ご注意:数値は全て目安で、実情によって異なります。)