Câu hỏi Tại sao Windows 7 yêu cầu tôi gỡ lỗi chương trình?


Tôi đã cài đặt Linux trên Virtualbox khi Virtualbox bị đóng băng. Một hộp popup hỏi tôi có muốn gỡ lỗi Virtualbox không.

Tại sao Windows 7 lại hỏi tôi, người dùng front-end, nếu tôi muốn gỡ lỗi một chương trình? Đây có phải là rào cản trừu tượng phá vỡ không? Windows 7 sẽ làm gì nếu tôi nhấn gỡ lỗi?


4
2018-01-28 16:56


gốc


Bạn có thể gửi ảnh chụp màn hình? Và tôi không nghĩ rằng Windows hỏi bạn để gỡ lỗi nó. Nó cần một số thao tác thủ công từ phía bạn để thực hiện thao tác gỡ lỗi. - Bibhas
Đừng hỏi những gì nó sẽ làm ... Hãy thử nó! - Tom Wijsman
Cảm ơn, tôi không thể tạo lại lỗi, nhưng cửa sổ bật lên lưu ý rằng "Virtualbox đã ngừng hoạt động. [Debug] [Đóng ứng dụng]". - David Faux
Ngoài ra, tôi đã thử nhấp vào gỡ lỗi và cửa sổ Virtualbox chỉ bị treo trong năm phút. Sau đó, Visual Studio 2010 mở ra và ghi nhận một lỗi con trỏ null. Điều này giúp tôi như người dùng cuối như thế nào? Outlandish. - David Faux


Các câu trả lời:


Hệ thống của bạn có nhiều khả năng được thiết lập cho gỡ lỗi postmortem.

Tôi không hoàn toàn chắc chắn những gì làm cho Windows cung cấp cho các tùy chọn để gỡ lỗi một quá trình không thành công. Có một trình gỡ rối cài đặt chắc chắn có thể là một phần của quyết định. Có thể một quá trình thậm chí có thể buộc phải có tùy chọn gỡ lỗi được hiển thị sau khi nó không thành công.

Thông thường, tùy chọn sẽ chỉ dành cho nhà phát triển.

Có thể đọc có liên quan:
https://stackoverflow.com/questions/396369/how-do-i-disable-the-debug-close-application-dialog-on-windows-vista


10
2018-01-28 17:22



Cảm ơn bạn, cửa sổ bật lên trong câu hỏi Stackoverflow đó chính xác là những gì đã xảy ra. Tôi có một trình gỡ lỗi được cài đặt kể từ khi Visual Studio 2010 được cài đặt. - David Faux
@Oliver, vâng, đó chính là cách hoạt động của nó. Khi xảy ra sự cố, Windows sẽ sử dụng bất kỳ trình gỡ lỗi nào được chỉ định trong AeDebug mã đăng kí. Theo mặc định, nó được thiết lập để Dr. Watson mà chỉ tạo ra một bãi rác và ghi nó, nhưng nếu bạn có một trình gỡ rối được cài đặt (mà hầu hết các môi trường lập trình sẽ cài đặt vì lý do rõ ràng), nó sử dụng thay vào đó. Trong trường hợp đó, khi một chương trình gặp sự cố và Windows thấy rằng bạn đã cài đặt trình gỡ lỗi, nó sẽ yêu cầu bạn xử lý sự cố vì nó không biết đó có phải là chương trình của riêng bạn mà bạn đang thử nghiệm bị lỗi hoặc chương trình của bên thứ ba. - Synetech


Nếu bạn đã gỡ lỗi JIT được kích hoạt trong Visual Studio hoặc một số trình gỡ rối khác, nó sẽ cho bạn cơ hội đính kèm một trình gỡ lỗi vào một quá trình bị treo để bạn có thể thực hiện gỡ lỗi sau khi chết. Nếu bạn không muốn gỡ lỗi JIT, bạn có thể vô hiệu hóa nó, và sau đó bạn phải tự đính kèm một trình gỡ rối vào một quá trình bạn muốn gỡ lỗi trước khi nó bị treo.


3
2018-01-29 02:33