Bỏ qua để tới nội dung chính
Đăng nhập với Microsoft
Đăng nhập hoặc tạo một tài khoản.
Xin chào,
Chọn một tài khoản khác.
Bạn có nhiều tài khoản
Chọn tài khoản bạn muốn đăng nhập.

Bài viết này mô tả sự cố trong đó SEH ngoại lệ bị xử lý không đúng trong Windows Embedded Compact 2013. Bản Cập Nhật có sẵn để khắc phục sự cố này. Trước khi cài đặt bản cập nhật này, tất cả các bản Cập Nhật đã phát hành cho sản phẩm này phải được cài đặt.

Triệu chứng

Xem xét tình huống sau:

  • Bạn sử dụng trình tạo ứng dụng bổ sung cho Visual Studio 2013 để tạo ra một ứng dụng C++ nhắm mục tiêu Windows Embedded Compact 2013.

  • Bạn cho phép ngoại lệ không đồng bộ xử lý bằng cách sử dụng "/EHa" biên dịch chuyển. Chuyển đổi này cho phép cả C++ đồng bộ và có cấu trúc ngoại lệ xử lý ngoại lệ không đồng bộ (SEH) xử lý các phương pháp được kết hợp trong cùng một mã.

  • Bạn chạy mã liên quan bắt SEH ngoại lệ.

Trong trường hợp này, ngoại lệ SEH luôn bắt trong xử lý ngoại lệ đầu tiên ngay cả khi một ngoại lệ C++ đồng bộ lọc.

Hành động mong muốn là ngoại lệ SEH đang bị chặn bởi các dấu chấm lửng xử lý ngoại lệ.

Ví dụ, bạn chạy mã mẫu sau:class CMyEx{
public:
CMyEx(int nParam) : m_nParam(nParam) { }
int m_nParam;
};

void TestExceptions()
{
try
{
int a = 42;
int b = 0;
// throw CMyEx(1);
// throw 97;
int c = a / b;
}
catch (const CMyEx &e)
{
wprintf(L"CMyEx exception caught (param=%d)!\n", e.m_nParam);
}
catch (...)
{
wprintf(L"Exception of unspecified type caught by ellipsis clause!\n");
}
}
Trong mẫu này, bạn luôn nhấn mệnh đề bắt đầu tiên khi xảy ra ngoại lệ SEH (nguyên chia bằng 0) thay vì xử lý dấu chấm lửng như mong đợi.

Giải pháp

Thông tin cập nhật phần mềm

Windows nhúng Compact 2013 Cập nhật hàng tháng (tháng 9 năm 2015) có sẵn từ Microsoft. Để tải xuống bản cập nhật hàng tháng này Windows Embedded Compact 2013, hãy đi tới Microsoft OEM trực tuyến hoặc MyOEM.

Điều kiện tiên quyết

Bản cập nhật này được hỗ trợ chỉ khi tất cả các bản Cập Nhật đã phát hành cho sản phẩm này cũng đã được cài đặt.

Yêu cầu khởi động lại

Sau khi bạn áp dụng bản cập nhật này, bạn phải thực hiện xây dựng sạch của toàn bộ nền tảng. Để thực hiện việc này, hãy thực hiện một trong những phương pháp sau:

  • Tạo menu chọn Sạch giải phápvà sau đó chọn Tạo giải pháp.

  • Tạo menu, chọn Giải pháp xây dựng lại.

Bạn không phải khởi động lại máy tính sau khi áp dụng bản cập nhật phần mềm này.

Thông tin thay thế bản cập nhật

Bản cập nhật này không thay thế bất kỳ bản Cập Nhật khác.

Phiên bản tiếng Anh của gói cập nhật phần mềm này có các thuộc tính tệp (hoặc thuộc tính tệp mới hơn) được liệt kê trong bảng sau. Ngày và giờ của các tệp này được liệt kê theo Giờ Quốc tế Phối hợp (UTC). Khi bạn xem thông tin về tệp, nó được chuyển đổi thành giờ địa phương. Để tìm sự khác nhau giữa UTC và giờ địa phương, sử dụng tab múi giờ trong mục ngày và giờ trong Pa-nen điều khiển.

Tệp được bao gồm trong gói cập nhật này

Tên tệp

Kích thước tệp

Ngày

Giờ

Đường dẫn

Frame.cpp

34,133

13-Nov-2014

23:06

Private\Winceos\Coreos\Core\Corelibc\Crtw32\Eh

Fullcrt.lib

30,027,378

09-Sep-2015

09:17

Public\Common\Oak\Lib\X86\Checked

Fullcrt.lib

30,228,292

09-Sep-2015

09:17

Public\Common\Oak\Lib\X86\Retail

Fullcrt.lib

28,759,836

09-Sep-2015

09:16

Public\Common\Oak\Lib\X86\Debug

Fullcrt.lib

29,278,300

09-Sep-2015

09:17

Public\Common\Oak\Lib\Armv7\Checked

Fullcrt.lib

29,566,730

09-Sep-2015

09:17

Public\Common\Oak\Lib\Armv7\Retail

Fullcrt.lib

33,139,560

09-Sep-2015

09:16

Public\Common\Oak\Lib\Armv7\Debug

Msvcr110d.dll

1,339,952

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\X86

Msvcr110.dll

754,224

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\X86

Msvcr110d.map

1,287,579

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\X86

Msvcr110d.rel

528,834

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\X86

Msvcr110.map

788,986

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\X86

Msvcr110.rel

242,169

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\X86

Msvcr110d.dll

1,145,312

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\Arm

Msvcr110.dll

539,608

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\Arm

Msvcr110d.map

2,714,275

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\Arm

Msvcr110d.rel

215,924

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\Arm

Msvcr110.map

1,258,317

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\Arm

Msvcr110.rel

122,167

08-Sep-2015

05:26

Public\Common\Sdk\Crt\Bin\Arm


Tham khảo

Tìm hiểu về thuật ngữ Microsoft sử dụng để miêu tả các bản cập nhật phần mềm.

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.

Cộng đồng giúp bạn đặt và trả lời các câu hỏi, cung cấp phản hồi và lắng nghe ý kiến từ các chuyên gia có kiến thức phong phú.

Thông tin này có hữu ích không?

Bạn hài lòng đến đâu với chất lượng dịch thuật?
Điều gì ảnh hưởng đến trải nghiệm của bạn?
Khi nhấn gửi, phản hồi của bạn sẽ được sử dụng để cải thiện các sản phẩm và dịch vụ của Microsoft. Người quản trị CNTT của bạn sẽ có thể thu thập dữ liệu này. Điều khoản về quyền riêng tư.

Cảm ơn phản hồi của bạn!

×