2008-10-07 39 views
13

Khi bước một chương trình trong Delphi 7, cửa sổ CPU đôi khi bật lên và sau đó bước qua các hướng dẫn đó. Tôi thấy phiền toái này khi tôi chỉ muốn bước Pascal Code.Làm thế nào để bạn vô hiệu hóa cửa sổ CPU trong Delphi 7

Có ai biết cách vô hiệu hóa cửa sổ bật lên CPU này không?

Tôi sẽ không xin lỗi nếu cửa sổ này không bao giờ hiển thị.

Nó không xảy ra trên Delphi 5 vốn là IDE trước đây của tôi mà tôi đã sử dụng cho Delphi. Tôi sử dụng nút Step-Over chủ yếu và chỉ bước vào khi muốn đi vào chi tiết của một đơn vị được sử dụng (pascal).

Trả lời

7

Delphi không theo mặc định, bước vào cửa sổ CPU. Vì vậy, câu trả lời cho câu hỏi của bạn không phải là nó không thể được thực hiện. Có lẽ câu hỏi nên là: Tôi đã làm điều gì gây ra điều này.

EDIT:
Từ các nhận xét Tôi hiểu rằng điều đó xảy ra khi bạn nhấn tạm dừng để ngắt trình gỡ rối.
Nó không phải là lạ mà nó dừng lại ở vị trí chính xác nơi nó được thực hiện khi bạn nhấn tạm dừng.
Điều này rất có thể là trong một số mã Windows mà bạn không có nguồn.
Bằng cách chọn Run -> Run to Next Source Line hoặc Shift - F7, chương trình của bạn sẽ thực hiện thêm một chút cho đến khi chương trình đạt được một số mã mà mã đó có mã nguồn.

Đây là câu trả lời cho vấn đề của bạn, nhưng hãy nhớ rằng bạn có thể đã bị phá vỡ tại một điểm mà bạn không bao giờ đạt được một dòng nguồn tiếp theo.

+0

Tôi thường bấm vào nút tạm dừng và kết thúc ngay lập tức trong cửa sổ CPU - rất khó sau đó bước để đến "bit pascal" tiếp theo vì nó thường xuyên đi qua các đường dẫn bất tận của các địa chỉ CPU. Đây là những gì tôi muốn biến mất. –

+0

Ah! Nhưng đó không phải là câu hỏi được nói. Tôi đã cập nhật câu trả lời của mình bằng giải pháp cho trường hợp này. –

0

Bạn rơi vào CPU-Window khi không có Thông báo gỡ lỗi cho Đơn vị hiện tại.

Hãy thử bật Debug-DCU (trong Project/Options .../Compiler). Nếu bạn chưa chọn các tùy chọn gỡ lỗi khác, hãy kích hoạt chúng.

+0

Đó sẽ không chữa nó. Trình gỡ lỗi thường cũng bước vào mã Windows. Không có thông tin gỡ lỗi cho điều đó trừ khi bạn đang chạy bản sao Windows đã bật gỡ lỗi. – TomC

+0

Nếu Debug-DCU được bật, trước tiên bạn sẽ truy cập vào Windows-Unit của Borland/CodeGear. Nếu bạn sau đó bước vào một API-Call, Delphi sẽ bật lên CPU-Window. Chỉ cần bước qua API-Call. –

1

vẻ như là tôi giải quyết nó: thêm vào registry: HKCU \ Software \ Borland | Delphi \ 7.0 \ Debugging: EnableCPU (stringValue): 0

+0

Nó không hoạt động trên mỏ - Nó vẫn bị phá vỡ vào các cửa sổ CPU khi tôi "tạm dừng" –

+0

Có thể nó giúp ích cho những thứ khác, vì vậy tôi cho bạn một cuộc bỏ phiếu. –

8

Trong RAD Studio 2009, bạn có thể phải Tools->Options->Debugger Options->Codegear Debuggers. Trong General, chọn Ignore non-user breakpoints.

+0

Cảm ơn, điều đó rất hữu ích.Ngoài ra còn có "Gỡ lỗi các quá trình sinh sản" trên cùng một hộp thoại. Nếu trình gỡ lỗi CPU nói "Quy trình sinh sản" ở trên cùng, thì bạn có thể bỏ chọn tùy chọn đó. Đó là vấn đề tôi có. –

1

Sửa đổi các khóa registry sau đây:

HKEY_CURRENT_USER/software/Borland/Delphi/6.0/Debugging/Integrated Debugging = 0 
Các vấn đề liên quan