- PR -

ブレークポイントに止まらない

1
投稿者投稿内容
kernel
常連さん
会議室デビュー日: 2005/10/05
投稿数: 22
投稿日時: 2006-06-15 14:50
こんにちは。

VisualStudio2003 Enterpriseで、デバッグしたいのですが、
ブレークポイントを設定しても止まりません。ブレークポイントの
○の中に?が入っていまして、「ブレークポイントは現在の設定では
ヒットしません。このドキュメントのシンボルが読込まれていません。」
とメッセージが出ています。

調べたところデバッグシンボルが更新されていないと、このメッセージが
でるようですが、pdbファイルは毎回更新されています。(ソリューション
に入っているプロジェクトすべてのpdbファイル)

他に原因があるのでしょうか?
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-06-15 14:58
引用:

kernelさんの書き込み (2006-06-15 14:50) より:

他に原因があるのでしょうか?


過去のスレッドを検索すると、いろんな情報がありますので、まず確認してみてください。
たとえば、単に「未到達」のコードである場合もそうなります。

まずは、
  • エントリ ポイントではどうか?
  • メソッドの先頭ではどうか? (そもそも到達しているのか?)
などを試されると良いと思います。

# ASP.NET の場合、IDE 上、そうなってしまうことがあるようです。


[ メッセージ編集済み 編集者: じゃんぬねっと 編集日時 2006-06-15 15:03 ]
なせ
常連さん
会議室デビュー日: 2006/01/06
投稿数: 41
お住まい・勤務地: おおさか
投稿日時: 2006-06-15 15:07
Releaseモードで動作させてたりしませんか?
ぶさいくろう
ぬし
会議室デビュー日: 2005/11/22
投稿数: 1232
お住まい・勤務地: 川崎市(は俺も含めてロクな人間が住んでないよw)
投稿日時: 2006-06-15 15:44
引用:

なせさんの書き込み (2006-06-15 15:07) より:
Releaseモードで動作させてたりしませんか?


2005ならともかく2003でデバッグ情報ファイルが更新されているくらいだからそれはなくね?
そういわれたくないがために書いたのに無視されちゃったのねん。
masa
大ベテラン
会議室デビュー日: 2004/10/28
投稿数: 161
投稿日時: 2006-06-15 15:55
引用:

ブレークポイントを設定しても止まりません。ブレークポイントの
○の中に?が入っていまして、「ブレークポイントは現在の設定では
ヒットしません。このドキュメントのシンボルが読込まれていません。」
とメッセージが出ています。
があるのでしょうか?



昨日、私も「とまらない」状態になりました。
私の場合、?も上のようなメッセージもありませんでした。

リビルドしても変わりませんでしたが、
Document and Settings の中に

「対象の実行ファイル+.ini」
「対象のプロジェクトのGUID+.ini」

のような名称の一時ファイルがあり、
それをリネームしてみたところ、きちんと止まるようになりました。


あくまでもご参考まで。
kernel
常連さん
会議室デビュー日: 2005/10/05
投稿数: 22
投稿日時: 2006-06-15 17:47
>>じゃんぬねっとさん
回答ありがとうございます。そもそも最初に過去ログとか、
他のHPも参考にして、pdbファイルが更新されていないのが
問題かな?と推測してobjフォルダとbinフォルダを丸ごと
消すような乱暴なやり方も試してみましたがダメでした・・・

またこのメソッドはリモーティングで呼び出していますので、
エントリーポイントからステップインしていくことができません。
(クライアントからF11でステップ実行しても、サーバのメソッド
内部に入れない)

なので、サーバ側のメソッドの先頭にブレークポイントを置いて
デバッグしようとしています。

ですが、メソッド自体は動いていますので呼び出されているのは
間違いありませんし、未到達の行でブレークしてもいません。



とりあえず、ソリューションから作りなおしてみたらデバッグは
できるようになりました。(何かスッキリしませんが・・・)

他のみなさまも色々な回答ありがとうございます。大変、参考に
なりました。
Bob
常連さん
会議室デビュー日: 2006/03/23
投稿数: 31
投稿日時: 2006-06-17 01:45
引用:

kernelさんの書き込み (2006-06-15 17:47) より:
またこのメソッドはリモーティングで呼び出していますので、
エントリーポイントからステップインしていくことができません。
(クライアントからF11でステップ実行しても、サーバのメソッド
内部に入れない)




確かにRemotingでやるときはこういう現象ですが、サーバーって物理的に離れていますか?
同じPCでテスト可能ならば、クライアント側で入り口を確認してから、サーバを立ち上げ、ServerのRemotingの入り口でBreakpointを設定して、同じプロセスにAttachしてもだめですか?
kernel
常連さん
会議室デビュー日: 2005/10/05
投稿数: 22
投稿日時: 2006-06-19 14:13
サーバーは物理的に別のマシンです。1台のPCでテストすることも可能ですが、
コンポーネントの登録などの作業が発生するため、今回はサーバー側でソリュ
ーションを作り直しました。
1

スキルアップ/キャリアアップ(JOB@IT)