• ベストアンサー

VB6.0で実行の度に異なるエラー

VB6.0,Windows2000で作成したプログラムについてなのですが,立ち上げなおして実行する度に「実行時エラー'6' オーバーフローしました」「インデックスが有効範囲にありません」等のエラーが出て実行できない場合と,正常に実行できる場合があります. (実行の度に実際に異なるエラーが発生している訳ではないと思います) このような現象は何が原因だと考えられるのでしょうか. ご存知の方ご教授ください.

質問者が選んだベストアンサー

  • ベストアンサー
noname#227796
noname#227796
回答No.1

前者は変数がオーバーフローを起こしているからです。 後者は配列の有効範囲のインデックスを指定していないからです。 出ないときがあるのは、「たまたまオーバーフローを起こさない値が設定された」「たまたま有効範囲のインデックスを指定した」ためです。 つまりはバグです。 デバッグして原因箇所を特定しましょう。 http://www.google.com/search?num=50&hl=ja&inlang=ja&ie=Shift_JIS&c2coff=1&q=%8E%C0%8Ds%8E%9E%83G%83%89%81%5B+%83I%81%5B%83o%81%5B%83t%83%8D%81%5B%82%B5%82%DC%82%B5%82%BD&lr=lang_ja http://www.google.com/search?num=50&hl=ja&lr=lang_ja&q=%83C%83%93%83f%83b%83N%83X%82%aa%97L%8c%f8%94%cd%88%cd%82%c9%82%a0%82%e8%82%dc%82%b9%82%f1

silverjet
質問者

補足

ご解答ありがとうございます. おっしゃる通りなのですが, 1.実行する(F5キーを押す)と同時にエラーが表示され(デバッグを押すと固まって強制終了), 2.VBを立ち上げた後,ある場合は何度実行してもエラーは出ない. 3.ユーザ入力や乱数など,実行毎に変化する処理はない. という点が不思議な点です. VBを立ち上げた際に依存する処理等はないはずなのですが. もう少し調べてみます. どうもありがとうございました.

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

この質問を読んで、私にとっては不思議なことに、質問文の中に、全くプログラム・コードが出てきません。プログラムエラーの原因を質問するのに、質問を見た人が、文章だけで原因が判るとお思いですか。 プログラムのエラーって原因の発見が(VBなどでさえ)、すごく難しいと日頃思われませんか。 だだしコードを載せさえすればれば、よく知っている人なら、原因が判るとは言ってません。 自分のパソコンでの実行時特有の条件も影響あるでしょう。 コンピュータは刻々、状態・値を変えていることもあり得ます。エラーの再現もなかなか思い通りには行かないです。 VBのデバッグ支援ツールの ・ブレークポイント ・シングルステップ ・イミディエイトウインドウ ・ウォッチウインドウ ・ローカルウインドウ などの結果は述べられていませんが、それらを使ってやるよりほかないように思いますが。 http://www.nms.ac.jp/nms/physics/kagawa/vb6abc/vc290.htm#s2_9a

silverjet
質問者

お礼

確かにおっしゃる通りです. ご迷惑をおかけしました. どうもありがとうございました.