こんにちは。
初歩的な質問をさせて頂きます。
VC++.NETを購入しまして、「今からはじめる・・」のテキスト通りにHellow,Worldの表示をコンパイル・実行させました。
その時に、下記のような警告メッセージが出てきます。
(メッセージ4行の内、2行を抜粋)
'test.exe': 'C:\WINNT\system32\NTDLL.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
プログラム '[708] test.exe: ネイティブ' はコード 0 (0x0) で終了しました。
デバック用ファイルがないと言うことのように思いますが、この意味は何でしょうか。
また、表示させないようにする方法を教えてください。
No.1ベストアンサー
- 回答日時:
自分でプログラムを作ってビルド (コンパイル)すると
*.exe (または *.dll)
*.pdb
というファイルができます。
※*.obj 等は省略してます。
*.exe/dll は実行ファイル、*.pdb がデバッグ情報ファイルです。
この *.pdb ファイルには、ソースファイル名とか関数名、引数の数、
変数名などのデバッグのための情報が入っています。
そのおかげで、デバッガ (Visual-C++デバッガ) で実行したときに、
ブレークポイントで止めたり、ステップ実行できたり、変数の値を
表示したりできるわけです。
デバッガはデバッグ対象の *.exe/dll を読み込むときに、
依存関係のあるほかの exe/dll も読み込み、
同時にそのデバッグ情報ファイル *.pdb/dbg を探します。
見つかった場合は読み込み、
無い場合は「見つかりませんでした」と表示します。
どんなプログラムも Windows 上で動いている限りは OS の API を
呼び出します。
その API は Windows に最初から入っている exe や dll (ntdll.dll など) の
中にあります (つまり自作 exe/dll と依存関係にあります)。
そして、Windows の exe や dll にはデバッグ情報ファイル
*.pdb (または *.dbg) ファイルは付いてきません。
ですから、「必要な DBG ファイルが見つからないか、開けません。」
というメッセージは必ず表示されてしまいます。
手元には Visual-C++6.0 しかないので .Net の場合も同じか
分かりませんが、*.exe/dll ファイルを右クリックして出てくるメニューから
「View Dependencies」を選ぶと、
その exe/dll が使用する(依存関係がある) dll がすべて表示されます。
※Dependency(depends.exe) は http://www.dependencywalker.com/
からもダウンロードできます。
で、「見つかりません」メッセージ表示させない方法ですが、
"デバッグ情報ファイル *.pdb/dbg が無くても表示させない"方法は分かりません。
ですが、Windows 側 exe/dll のデバッグ情報をインストールすれば、メッセージは出なくなります。
その手順や意味は
http://www.microsoft.com/japan/whdc/DevTools/Deb …
に書いてありますが、自分でやって見たものの、うまくいかなかったため、
説明はやめときます (失礼)。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
- その他(プログラミング・Web制作) VScodeでpythonプログラムの関数を実行したい 2 2022/07/13 19:24
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- Excel(エクセル) フォルダ内のエクセルファイルを開かずにデータ採取する関数式 2 2022/12/22 22:15
- 労働相談 合意済み仕様の商品納入後における仕様変更要求への対応について 5 2023/04/19 09:41
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jarファイルとjava.exeの関連付...
-
jarの開き方を教えてください。
-
c/c++ ビルドしたにもかかわら...
-
フォルダ内の特定 拡張子のファ...
-
xismoについてです!開こうとす...
-
VBスクリプトのWshShell.Runに...
-
コンポーネント`MSCOMM32.cox'...
-
JARファイルをEclipseを使って...
-
hostsファイルを置き換える and...
-
バッチファイルからエクエルの...
-
VC++から引数付きexeファイルの...
-
VB6 SP6で作ったEXEを動かしたい
-
Runtime.getRuntime().exec("cm...
-
パラメータが正しくありません...
-
exeファイルをすぐに終了させな...
-
【質問】ノートパソコンのDVDド...
-
ファイル名の先頭が数字だと駄...
-
eclipse exeファイル作成 エラ...
-
JavaScriptでコマンドプ...
-
プログラムでAD変換器をコント...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access クエリ実行が急に非常に...
-
OLE又はDDEを使うVISUAL BESIC...
-
xismoについてです!開こうとす...
-
VC++から引数付きexeファイルの...
-
JavaScriptでコマンドプ...
-
LINK : fatal error LNK1104に...
-
VBAでEXEファイルを動かす方法...
-
c/c++ ビルドしたにもかかわら...
-
WScript.Echo と msgbox
-
64bit環境で32bitのodbc参照
-
VBAでMP3を鳴らしたい
-
コマンドプロンプトで外のexeや...
-
batからexeを実行し戻り値を受...
-
ファイルアイコンの左下に緑の□...
-
コンパイル ./aと./a.out の違い
-
htaファイルが実行されません
-
jarファイルとjava.exeの関連付...
-
JAVA .jarファイルに再圧縮する...
-
VB6.0で作ったプロジェクトが起...
-
以下のように複数のファイルを...
おすすめ情報