- PR -

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

投稿者投稿内容
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2006-04-18 07:42
なんか80年代のうたみたい。
未記入
会議室デビュー日: 2005/11/09
投稿数: 18
投稿日時: 2006-04-18 14:01
まどかさま
下記を参考させて頂きました。

「Visual Studio 2005 または Visual Studio .NET デバッガは、 Load イベントにステップ。」
http://support.microsoft.com/kb/325118/ja#kb1

「Visual Studio 2005 or Visual Studio .NET debugger does not step into the Load event」
http://support.microsoft.com/kb/325118/en

英語が不得意なため、内容を理解できてないかもしれません。
Windowsフォームのコンストラクタが呼び出された後に続く、
Loadなどのフォームのスタートアップイベントにはステップイン実行はきかないので、
とめたいときはブレークポイントを設定してください、ということでしょうか。
(理由は、フォームのコンストラクタとスタートアップイベントの間にデバッガの対象となるシンボルがないから)

勉強になりました。ありがとうございます。

ただ、今回の場合これが該当するのかどうか…。
私の説明が下手なため、みなさまに現象を伝えられず申し訳ありません。
(Loadの最中はブレークできるが、Loadした後、
FormB上のコントロールを操作することによって起きるイベントでブレークしない、ということなのですけれども…)

------------------------------------------------------------
まどかさまご提案の、テストB・テストCの再テストについて

<<LoadでBreakPoint無しだとテスト3,4はどうなりますか?
どちらもメッセージは表示されましたが、ブレークしませんでした。

------------------------------------------------------------

別件ですが、Disposeメソッドについて、
.NETやオブジェクト指向を勉強したてで、お恥ずかしい限りですが、勘違いしていました。

FormBが自分の画面上のbtnClose(画面を閉じるボタン)をClickするときに
Me.Disposeで処理していました。
Disposeは他者の指示によって行われなければならないですよね。
じゃんぬねっとさまのコードを参考にさせていただきます。
基本的なことで失礼しました。

------------------------------------------------------------
その他の原因追究ですが、仕事上の時間の制約もあり、
じゃんぬねっとさまご提案の新規プロジェクトにコピペは厳しそうなので、
現実的にFormAを作り直してみます(何となく、このあたりが一番疑わしいので)。

また結果等分かり次第、ご報告申し上げます。
みなさまには貴重なお時間を割いていただき、ありがとうございます。

以上
未記入
会議室デビュー日: 2005/11/09
投稿数: 18
投稿日時: 2006-04-19 22:31
未記入です。

FormAを新たに作り直して再テストしてみました。
結果、ブレークしませんでした。

その後、Formの生成と消滅が怪しいかもと思い、
NewとDisposeをじゃんぬねっとさまのコードを参考に書き換えました。

その結果、ブレークするようになりました。
根本的な原因は不明ですが、単に、Formの生成と消滅がうまくいってなかったようです。

みなさまには大変お騒がせしました。
貴重なお時間を割いて頂き、ありがとうございました。
(きちんとした原因報告ができず、申し訳ありません。単に私の知識・スキル不足でした。)

今後またお世話になることがありましたら、その時はもう少しましな質問が出来るよう、精進いたします。
まずは御礼まで。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-19 23:16
引用:

未記入さんの書き込み (2006-04-19 22:31) より:

その後、Formの生成と消滅が怪しいかもと思い、
NewとDisposeをじゃんぬねっとさまのコードを参考に書き換えました。

その結果、ブレークするようになりました。
根本的な原因は不明ですが、単に、Formの生成と消滅がうまくいってなかったようです。


すみません、どうも納得できないです。

引用:

Dim _fm As New FormB(prm1,prm2)


ローカルでかつ、常に新しいインスタンスを生成しているのですから、
消滅しなかろうと、前に生成したインスタンスとはまったく関係がないはずです。

どこかで入れ替わっているような場所があれば別ですが...

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
未記入
会議室デビュー日: 2005/11/09
投稿数: 18
投稿日時: 2006-04-20 22:57
すみません。きちんと原因報告ができなくて。
なにぶん知識が浅いため、
そのようにコードを書き換えたらブレークするようになった、
ということぐらいしかつかめないのです。
もっと勉強して原因が分かったら、ご報告いたします。
ご助言いただいたみなさまには、大変申し訳ありませんでした。



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