デバッガーはエラー時にソースコードにステップインしますが(のようにF7)、Delphiの基本的なDCU(ライブラリ)がコードにコンパイルされるだけで、ソースがデバッグに使用されない通常の動作モードを復元したいと思います。
たとえば、私のプログラムでエラーが発生した場合、デバッガーはControls.pasにステップインしますTControl.Click
。通常の場合(インストール直後)は、Delphiがこれらのメソッドをステップオーバーする場合です。
デバッグ情報なしでControls.pasを再コンパイルする必要がありますか?もしそうなら、どのように?
理解を深めるために、このテーマを追加情報で拡張します。
マウスに問題があるDelphi6Prof.を使用しています(システムエラーコード5)。したがって、Controls.pasに再コンパイルして、マウス位置ゲッターコードを置き換えます。それで:
- そのためのフォルダを作成しました: "c:\ D \ Common \ Delphi_Patches \ Delphi_6 \"
- オリジナルのControls.pasをその中に入れました。
- Controls.pasを変更し、位置ゲッターコードを置き換えました。
- Delphiのライブラリパスを設定し、最初のフォルダを「c:\ D \ Common \ Delphi_Patches \Delphi_6\」に設定します
これらの手順で、マウスセーフコードを使用してソースをコンパイルできます。
わかりました。しかし、Delphiは毎回F7のControls.pasにステップインしますが、例外はあります。これは非常に「怒りっぽい」ものです。
ライブラリパスから「Controls.pas」を削除しても、デバッガーはその元の「Controls.pas」を見つけて開きます... :-(
どのコードでも「UseDebugDCU-s」は使用しません。
コンパイラオプションから「デバッグ情報」を削除しようとしましたが、Delphiが元のControls.pasを開きます...
だから私はDelphiへの道を探します。「Controls.pas」に足を踏み入れるのではなく、私のdcuを使用します...
これが問題を理解するためのより良いコンテキストを提供することを願っています。