Triệu chứng
Hiện tượng 1
Khi bạn biên dịch một dự án Microsoft Visual C++ có một tuyên bố điều tra bù cụ thể, bạn có thể nhận được lỗi C2371, C2556 hoặc C2511.
Nguyên nhân 1
Sự cố này xảy ra bởi vì trình biên dịch không chính xác phân tích liệt kê khai mã xảy ra vào bộ đệm tệp [tại khoảng chênh tệp (4096 * n) -1].
Hiện tượng 2
Bạn biên dịch một dự án Visual C++ có một cuộc gọi ảo chức năng mà trả về đối tượng và có liên kết giá trị trả lại để tham khảo. Bạn cũng có thể chọn /clr hỗ trợ. Trong trường hợp này, bạn có thể nhận được ngoại lệ vi phạm truy cập tại thời gian chạy.
Nguyên nhân 2
Sự cố này xảy ra vì phần mở rộng thực đời một giá trị tạm thời với một tham chiếu const không hoạt động nếu các điều kiện sau là đúng:
-
Dự án được biên dịch như /clr.
-
Giá trị tạm thời là giá trị trả lại cuộc gọi ảo chức năng hoặc chức năng gọi các chức năng con trỏ.
Giải pháp
Thông tin về cập nhật nóng
Cập nhật nóng được hỗ trợ do Microsoft cung cấp. Tuy nhiên, cập nhật nóng này chỉ được dùng để khắc phục sự cố được mô tả trong bài viết này. Chỉ áp dụng cập nhật nóng này cho hệ thống đang gặp sự cố cụ thể này.
Nếu cập nhật nóng này sẵn có để tải xuống, có phần "Tải xuống Hotfix sẵn có" ở đầu bài viết Cơ sở Kiến thức này. Nếu phần này không xuất hiện, hãy gửi một yêu cầu tới bộ phận Hỗ trợ và Dịch vụ Khách hàng của Microsoft để nhận hotfix. Lưu ý Nếu sự cố khác xảy ra hoặc nếu cần khắc phục sự cố, bạn có thể phải tạo một yêu cầu dịch vụ riêng. Chi phí hỗ trợ thông thường sẽ tính cho các câu hỏi hỗ trợ bổ sung và các sự cố không phù hợp với cập nhật nóng cụ thể này. Để có danh sách đầy đủ số điện thoại hỗ trợ và dịch vụ khách hàng của Microsoft hoặc để tạo yêu cầu dịch vụ riêng, hãy ghé thăm website sau của Microsoft:http://support.microsoft.com/contactus/?ws=supportLưu ý "Tải xuống Hotfix sẵn có" Hiển thị các ngôn ngữ mà hotfix này sẵn có. Nếu bạn không thấy ngôn ngữ của mình thì đó là do cập nhật nóng này hiện không có ngôn ngữ đó.
Điều kiện tiên quyết
Để áp dụng hotfix này, bạn phải có Microsoft Visual Studio 2012 Update 4 cài đặt.
Yêu cầu khởi động lại
Bạn có thể phải khởi động lại máy tính sau khi bạn cài đặt hotfix nếu tệp bị ảnh hưởng không được dùng khi cài đặt. Chúng tôi khuyên bạn đóng tất cả các thành phần liên quan đến Visual Studio 2012 trước khi cài đặt hotfix.
Trạng thái
Microsoft đã xác nhận rằng đây là sự cố trong sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".