• 締切済み

ソースファイルを追加すると、プログラムが動かなくなる。

こんにちは。 VC++6.0を使い、先輩が作ったプログラム(デバッグ済み、実行の確認済み)に、 "Beep(400,100)"を追加して、リビルドを行った。 リビルドがうまくいったが、実行が全くできなかった。(途中でPCがハングアップしたようです。ウィンドの"×"をクリックすると、"プログラムが応答していません"とのメッセージBOXが表示された。) デバッグウィンドに下記のメッセージが書かれました。 D:\USB\確認用\LI01Check\Release\LI01Check.exe' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\System32\ntdll.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\WinRTUSB.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\kernel32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\user32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\gdi32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\imm32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\MFC42LOC.DLL' をロードしました、合致するシンボル情報は見つかりませんでした。 私は、VC++がなので、ぜんぜんわかりません。よろしくお願いします。同じプログラムがうまく実行できた事もある。ただ、一度エラーが出ると、修正前のプログラムも実行できなくなる。 (エラーリストにリストアップされているdllファイルの存在も確認してあります。) 初心者なので、よろしく、お願いします。

みんなの回答

  • driverII
  • ベストアンサー率27% (248/913)
回答No.3

もう一度全てを見直すと疑問が浮かび上がってきました。 そもそもBeep(400,100)をコメントアウトしてリビルド>実行すると正常に動作するのでしょうか?それとも・・・

すると、全ての回答が全文表示されます。
  • driverII
  • ベストアンサー率27% (248/913)
回答No.2

#1でも書きましたが、 "ファイル名"をロードしました、合致するシンボル情報は見つかりませんでした。 というメッセージはデバッグ時に"ファイル"をロードして、その(デバッガが解釈可能な)シンボル情報を得ることが出来ないというもので問題ありません。リリースでビルドしたファイルにはデバッグに必要なシンボル情報がないのです。 問題なのは 例外処理 (初回) は LI01Check.exe (KERNEL32.DLL) にあります: 0xE06D7363: Microsoft C++ Exception。 のメッセージでなんらかの障害の原因があることが考えられます。 まず、どこでそのメッセージが出ているかを突き止めるのが第一歩です。 #1でも書きましたがブレークポイントの設定をしてデバッグを行ってください。 おそらく設定の問題ではないと思います。 永久ループに陥ってるなど、プログラム上の問題でしょう。

すると、全ての回答が全文表示されます。
  • driverII
  • ベストアンサー率27% (248/913)
回答No.1

こんにちは。 もともとのプログラムにバグがあるとは考えられないのでしょうか? 多分それが原因だと思います。 デバッグウィンドのメッセージはリリース版の実行形式ファイルを、 デバッグする際に出るもので全く問題ありません。 画面上部に「Release」と書かれたコンボボックスがあると思いますが、 それを「Debug」に変更し、リビルドを行ってみてください。 あとはブレークポイントなどを使用し、普通にデバッグを行ってください。

tianan
質問者

補足

早速のご回答ありがとう、ございます。 「Debug」に変更して、リビルドがエラーなかった。ただ実行すると、デバッグウィンドに下記のメッセージが書かれた。  'C:\WINNT\System32\ntdll.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\WinRTUSB.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\kernel32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\user32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\gdi32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\advapi32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\rpcrt4.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\ole32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\OLEAUT32.DLL' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\comdlg32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\shlwapi.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\MSVCRT.DLL' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\comctl32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\shell32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\winspool.drv' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\oledlg.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\Program Files\MouseWare\system\CCMSGHK.DLL' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\indicdll.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\ATOK15W.IME' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\version.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\lz32.dll' をロードしました、合致するシンボル情報は見つかりませんでした。 'C:\WINNT\system32\ATOK15DE.DLL' をロードしました、合致するシンボル情報は見つかりませんでした。 例外処理 (初回) は LI01Check.exe (KERNEL32.DLL) にあります: 0xE06D7363: Microsoft C++ Exception。 例外処理 (初回) は LI01Check.exe (KERNEL32.DLL) にあります: 0xE06D7363: Microsoft C++ Exception。 'C:\Program Files\MouseWare\system\LGMOUSHK.DLL' をロードしました、合致するシンボル情報は見つかりませんでした。 例外処理 (初回) は LI01Check.exe (KERNEL32.DLL) にあります: 0xE06D7363: Microsoft C++ Exception。 プログラム 'D:\USB\jj13\LI01Check\Debug\LI01Check.exe' はコード 0 (0x0) で終了しました。    このプログラムの機能としては、USBのコードをWINRTというツールから受け取り、エディターに表示した上シリアルボートに出力することです。今までの動きから見る限り、問題なく動いているようです。 私は元のファイルをWORKSPACEごとに自分のパソコン(OSはWINDOWS2000)にコピーして、設定など何もせず、リビルドして、ソースを追加したりして、再度ビルドしてEXEファイルを作成していた。最初がなんにも問題なく動いていったが、修正している途中で上記のエラーが発生した。 設定の問題ですか?初心者なので、いろいろ教えてください。

すると、全ての回答が全文表示されます。

関連するQ&A