2010-12-29 38 views
12

Khi có một ngoại lệ được ném vào chương trình của tôi, và nó được unhandled, tôi hy vọng trình gỡ lỗi để phá vỡ trong chương trình của tôi và cho tôi thấy vấn đề là gì. Điều này không xảy ra. Thay vào đó, chương trình của tôi chỉ đơn giản là thoát, và gỡ lỗi dừng lại.Tại sao Visual Studio 2010 không giải quyết một ngoại lệ chưa được xử lý?

Nếu tôi nhìn vào sản lượng gỡ lỗi, tôi có thể thấy ngoại lệ của tôi:

Một ngoại lệ cơ hội đầu tiên của loại 'System.NullReferenceException' xảy ra ở System.dll

Tôi sử dụng Visual Studio 2010, Visual Basic, viết một ứng dụng WinForms đơn giản. Mã không quan trọng trong trường hợp này ... nó xảy ra với bất kỳ ngoại lệ nào mà tôi đã thấy cho đến thời điểm này.

Tôi đã đọc rất nhiều trên mạng về làm cho gỡ lỗi menu và nhấn Exceptions và cho phép "phá vỡ vào sử dụng ngoại lệ unhandled", nhưng tôi không thấy tùy chọn này. Tôi nghĩ rằng lời khuyên này là dành cho VS2008, và không còn áp dụng được nữa.

Tôi cũng nên lưu ý rằng tôi không chạy bất kỳ thử nghiệm đơn vị nào. Tôi chưa bao giờ thiết lập chúng. Tuy nhiên, tôi đã đọc rằng có lẽ các đơn vị thử nghiệm là nuốt ngoại lệ của tôi?

Vui lòng thông báo cho tôi về cách thay đổi hành vi của Visual Studio, vì vậy tôi có thể theo dõi các ngoại lệ chưa được xử lý này.

Cảm ơn bạn đã dành thời gian.

+0

Bạn đang chạy phiên bản Windows 64 bit chưa? –

+0

@Có, không tôi đang sử dụng Windows XP SP3, 32 bit. – Brad

Trả lời

16

Mục có thể không nằm trong menu mà bạn có thể khắc phục bằng cách tùy chỉnh menu và thêm mục vào menu gỡ lỗi.

Bạn cũng sẽ có thể truy cập menu ngoại lệ sử dụng tổ hợp phím CTRL + ALT + E

Bạn cần phải đánh dấu vào ô trong cột "Ném" cho Common Language Runtime ngoại lệ (CLR)

+0

Cảm ơn Sohnee. Để làm rõ, tôi thấy * Ngoại lệ * trên menu gỡ lỗi và có thể kéo nó lên. Tất cả những gì tôi thấy là các tùy chọn cho C++, CLR, Manage Debugging Assistants,… Tìm kiếm cho người dùng bất cứ thứ gì không có giá trị. – Brad

+3

Bạn cần đánh dấu vào ô trong cột "Thrown" cho ngoại lệ Common Language Runtime (CLR). Điều này sẽ đảm bảo bạn phá vỡ tất cả các lỗi. Tôi sẽ thêm chi tiết này vào câu trả lời. – Fenton

+0

@Sohnee, hiện đang hoạt động, cảm ơn. Điều này cũng sẽ phá vỡ ngoại lệ xử lý? Nếu vậy, có thể làm cho nó phá vỡ chỉ trên trường hợp ngoại lệ chưa được giải quyết? – Brad

0

i có cùng một vấn đề. tôi đã mở hộp thoại ngoại lệ và nhấp vào nút "Khôi phục danh sách về cài đặt mặc định" và giờ đây nó sẽ bị ngắt trên các ngoại lệ chưa được xử lý chính xác.

có thể có lỗi khi nâng cấp từ năm 2013.

+0

Trong trường hợp của tôi, đây là Visual Studio 2010, nhưng tốt để biết nó đã được sửa trong các phiên bản sau. – Brad

Các vấn đề liên quan