Điều này có vẻ như nó nên được đơn giản, nhưng tôi đã thử cả
xử lý ngoại lệ try {} catch (...) {}
C++ và
__try {} __finally {}
cấu trúc xử lý ngoại lệ (SEH)
và không ai sẽ bắt ngoại trừ điều đó xảy ra khi bạn Control-C ứng dụng. Tôi không thực sự mong đợi xử lý ngoại lệ C++ để làm điều này, vì Control-C là một tín hiệu kiểu hệ thống và không phải do C++ throw(), nhưng tôi đã thử nó khi SEH không hoạt động.Làm cách nào để nắm bắt ngoại lệ Control-C trong ứng dụng giao diện điều khiển Visual C++?
Nếu tôi chạy dưới trình gỡ rối, nó cho thấy rằng Control-C tăng ngoại lệ cơ hội đầu tiên, nhưng khi bị gỡ xuống, trình xử lý của tôi không bao giờ được gọi.
Đó không phải là ngoại lệ, được gọi là gián đoạn. –
Doh - ngắt. Lỗi của tôi. –
@Daniel Vâng, về mặt kỹ thuật, Microsoft nên gọi nó là Xử lý INTERRUPT có cấu trúc, nhưng không. Po-tAY-to Po-tAH-to. –