Triệu chứng
Trên máy tính đang chạy Microsoft .NET Framework 3.5 Service Pack 1 (SP1), biên soạn (JIT) chỉ trong thời gian và riêng ảnh điện (Ngen.exe) sử dụng các tập tin Mscorjit.dll có thể tạo mã không chính xác. Do đó, một ứng dụng quản lý C++ 32-bit có thể tạo ra kết quả chính xác.
Sự cố này xảy ra nếu các điều kiện sau là đúng:
-
Struct loại mã nguồn có ít hơn bốn loại vô hướng và không tham chiếu đối tượng quản lý.
-
Bạn sử dụng hướng dẫn Cpblk hoặc hướng dẫn Initblk.
Lưu ý Sự cố này xảy ra trong ứng dụng 64-bit.
Nguyên nhân
Sự cố này xảy ra vì hồi quy trong .NET Framework 3.5 SP1.
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. Cập nhật nóng này có thể được kiểm tra thêm. Vì vậy, nếu bạn không bị ảnh hưởng nghiêm trọng bởi sự cố này, chúng tôi khuyên bạn đợi bản cập nhật phần mềm tiếp theo có chứa cập nhật nóng này.
Để tải xuống hotfix này từ thư viện mã MSDN, hãy ghé thăm Web site sau của Microsoft:
http://code.msdn.microsoft.com/KB957542
Lưu ý Thư viện mã MSDN 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 bạn được liệt kê, đó là do trang tài nguyên thư viện mã này hiện không có ngôn ngữ đó.
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 Trang web sau của Microsoft:
http://support.microsoft.com/contactus/?ws=supportLưu ý Nếu bạn có một ứng dụng 32-bit chạy trên nền 64-bit, áp dụng hotfix dành cho phiên bản 64-bit để giải quyết vấn đề này.
Điều kiện tiên quyết
Bạn phải có .NET Framework 3.5 SP1 được cài đặt để áp dụng hotfix này.
Yêu cầu khởi động lại
Bạn có thể phải khởi động lại máy tính nếu bất kỳ tệp được Cập Nhật đang được sử dụng.
Thông tin thay thế cập nhật nóng
Hotfix này không thay thế bất kỳ hotfix nào khác.
Thông tin về tệp
Phiên bản tiếng Anh của cập nhật nóng 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, ngày và giờ đượ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.
Windows 2000, Windows XP và Windows Server 2003, x86 Phiên bản
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
---|---|---|---|---|
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
16-Sep-2008 |
13:13 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
16-Sep-2008 |
13:13 |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
16-Sep-2008 |
13:13 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
16-Sep-2008 |
13:13 |
Windows 2000, Windows XP và Windows Server 2003, x64 Phiên bản
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
Nền tảng |
---|---|---|---|---|---|
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
16-Sep-2008 |
13:13 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
16-Sep-2008 |
13:13 |
x86 |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
16-Sep-2008 |
13:13 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
16-Sep-2008 |
13:13 |
x86 |
Mscordacwks.dll |
2.0.50727.3068 |
1,767,944 |
16-Sep-2008 |
10:33 |
x64 |
Mscorjit.dll |
2.0.50727.3068 |
1,580,032 |
16-Sep-2008 |
10:33 |
x64 |
Mscorlib.dll |
2.0.50727.3068 |
4,562,944 |
16-Sep-2008 |
10:33 |
x64 |
Mscorwks.dll |
2.0.50727.3068 |
10,079,744 |
16-Sep-2008 |
10:33 |
x64 |
Windows 2000, Windows XP và Windows Server 2003, phiên bản IA-64
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
Nền tảng |
---|---|---|---|---|---|
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
16-Sep-2008 |
13:13 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
16-Sep-2008 |
13:13 |
x86 |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
16-Sep-2008 |
13:13 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
16-Sep-2008 |
13:13 |
x86 |
Mscordacwks.dll |
2.0.50727.3068 |
3,087,880 |
16-Sep-2008 |
10:44 |
IA-64 |
Mscorjit.dll |
2.0.50727.3068 |
2,560,512 |
16-Sep-2008 |
10:44 |
IA-64 |
Mscorlib.dll |
2.0.50727.3068 |
4,005,888 |
16-Sep-2008 |
10:44 |
IA-64 |
Mscorwks.dll |
2.0.50727.3068 |
20,153,856 |
16-Sep-2008 |
10:44 |
IA-64 |
Windows Vista gói dịch vụ 1 (SP1) và Windows Server 2008, x86 Phiên bản
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
Nền tảng |
---|---|---|---|---|---|
Mscorlib.resources.dll |
2.0.50727.3053 |
352,256 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
425,984 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307,200 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
331,776 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307,200 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
348,160 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
319,488 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
290,816 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307,200 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.1434 |
397,312 |
11-Jan-2008 |
22:59 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:55 |
x86 |
Big5.nlp |
Không áp dụng |
66,728 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Bopomofo.nlp |
Không áp dụng |
82,172 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Ksc.nlp |
Không áp dụng |
116,756 |
18-Dec-2007 |
21:04 |
Không áp dụng |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
01-Oct-2008 |
22:27 |
x86 |
Normidna.nlp |
Không áp dụng |
59,342 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfc.nlp |
Không áp dụng |
45,794 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfd.nlp |
Không áp dụng |
39.284 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfkc.nlp |
Không áp dụng |
66,384 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfkd.nlp |
Không áp dụng |
60,294 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Prc.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Prcp.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Sortkey.nlp |
Không áp dụng |
262,148 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Sorttbls.nlp |
Không áp dụng |
20,320 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Xjis.nlp |
Không áp dụng |
28,288 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
01-Oct-2008 |
22:27 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
24-Sep-2008 |
22:21 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
01-Oct-2008 |
22:27 |
x86 |
Windows Vista SP1 và Windows Server 2008, x64 Phiên bản
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
Nền tảng |
---|---|---|---|---|---|
Big5.nlp |
Không áp dụng |
66,728 |
18-Dec-2007 |
21:01 |
Không áp dụng |
Bopomofo.nlp |
Không áp dụng |
82,172 |
18-Dec-2007 |
21:01 |
Không áp dụng |
Ksc.nlp |
Không áp dụng |
116,756 |
18-Dec-2007 |
21:02 |
Không áp dụng |
Mscorlib.dll |
2.0.50727.3068 |
4,562,944 |
01-Oct-2008 |
22:25 |
x64 |
Normidna.nlp |
Không áp dụng |
59,342 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Normnfc.nlp |
Không áp dụng |
45,794 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Normnfd.nlp |
Không áp dụng |
39.284 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Normnfkc.nlp |
Không áp dụng |
66,384 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Normnfkd.nlp |
Không áp dụng |
60,294 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Prc.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Prcp.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Sortkey.nlp |
Không áp dụng |
262,148 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Sorttbls.nlp |
Không áp dụng |
20,320 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Xjis.nlp |
Không áp dụng |
28,288 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Mscordacwks.dll |
2.0.50727.3068 |
1,767,944 |
01-Oct-2008 |
22:25 |
x64 |
Mscorjit.dll |
2.0.50727.3068 |
1,580,032 |
24-Sep-2008 |
23:06 |
x64 |
Mscorwks.dll |
2.0.50727.3068 |
10,079,744 |
01-Oct-2008 |
22:25 |
x64 |
Mscorlib.resources.dll |
2.0.50727.3053 |
352,256 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
425,984 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307,200 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
331,776 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307,200 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
348,160 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
319,488 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
290,816 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307,200 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.1434 |
397,312 |
11-Jan-2008 |
22:59 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:56 |
x86 |
Big5.nlp |
Không áp dụng |
66,728 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Bopomofo.nlp |
Không áp dụng |
82,172 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Ksc.nlp |
Không áp dụng |
116,756 |
18-Dec-2007 |
21:04 |
Không áp dụng |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
01-Oct-2008 |
22:27 |
x86 |
Normidna.nlp |
Không áp dụng |
59,342 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfc.nlp |
Không áp dụng |
45,794 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfd.nlp |
Không áp dụng |
39.284 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfkc.nlp |
Không áp dụng |
66,384 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfkd.nlp |
Không áp dụng |
60,294 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Prc.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Prcp.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Sortkey.nlp |
Không áp dụng |
262,148 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Sorttbls.nlp |
Không áp dụng |
20,320 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Xjis.nlp |
Không áp dụng |
28,288 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
01-Oct-2008 |
22:27 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
24-Sep-2008 |
22:21 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
01-Oct-2008 |
22:27 |
x86 |
Windows Vista SP1 và Windows Server 2008, phiên bản IA-64
Tên tệp |
Phiên bản tệp |
Kích thước tệp |
Ngày |
Giờ |
Nền tảng |
---|---|---|---|---|---|
Big5.nlp |
Không áp dụng |
66,728 |
18-Dec-2007 |
21:06 |
Không áp dụng |
Bopomofo.nlp |
Không áp dụng |
82,172 |
18-Dec-2007 |
21:06 |
Không áp dụng |
Ksc.nlp |
Không áp dụng |
116,756 |
18-Dec-2007 |
21:06 |
Không áp dụng |
Mscorlib.dll |
2.0.50727.3068 |
4,005,888 |
01-Oct-2008 |
22:26 |
IA-64 |
Normidna.nlp |
Không áp dụng |
59,342 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Normnfc.nlp |
Không áp dụng |
45,794 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Normnfd.nlp |
Không áp dụng |
39.284 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Normnfkc.nlp |
Không áp dụng |
66,384 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Normnfkd.nlp |
Không áp dụng |
60,294 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Prc.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Prcp.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Sortkey.nlp |
Không áp dụng |
262,148 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Sorttbls.nlp |
Không áp dụng |
20,320 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Xjis.nlp |
Không áp dụng |
28,288 |
18-Dec-2007 |
21:08 |
Không áp dụng |
Mscordacwks.dll |
2.0.50727.3068 |
3,087,880 |
01-Oct-2008 |
22:26 |
IA-64 |
Mscorjit.dll |
2.0.50727.3068 |
2,560,512 |
24-Sep-2008 |
23:14 |
IA-64 |
Mscorwks.dll |
2.0.50727.3068 |
20,153,856 |
01-Oct-2008 |
22:26 |
IA-64 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
348,160 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
319,488 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:59 |
x86 |
Big5.nlp |
Không áp dụng |
66,728 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Bopomofo.nlp |
Không áp dụng |
82,172 |
18-Dec-2007 |
21:03 |
Không áp dụng |
Ksc.nlp |
Không áp dụng |
116,756 |
18-Dec-2007 |
21:04 |
Không áp dụng |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
01-Oct-2008 |
22:27 |
x86 |
Normidna.nlp |
Không áp dụng |
59,342 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfc.nlp |
Không áp dụng |
45,794 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfd.nlp |
Không áp dụng |
39.284 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfkc.nlp |
Không áp dụng |
66,384 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Normnfkd.nlp |
Không áp dụng |
60,294 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Prc.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Prcp.nlp |
Không áp dụng |
83,748 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Sortkey.nlp |
Không áp dụng |
262,148 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Sorttbls.nlp |
Không áp dụng |
20,320 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Xjis.nlp |
Không áp dụng |
28,288 |
18-Dec-2007 |
21:05 |
Không áp dụng |
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
01-Oct-2008 |
22:27 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
24-Sep-2008 |
22:21 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
01-Oct-2008 |
22:27 |
x86 |
Giải pháp
Để khắc phục sự cố này, sử dụng một trong các phương pháp sau.
Phương pháp 1
Nếu ứng dụng mã mẫu mã trong phần "Thông tin", tìm dòng mã sau.
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d).m_x))
Thay đổi dòng mã như sau.
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d)))
Phương pháp 2
Triển khai một tập tin ini. Để thực hiện việc này, tạo một tệp có chứa mã sau.
[.NET Framework Debugging Control]AllowOptimize=0
Tên tệp ini như mô-đun có vấn đề, nhưng sử dụng phần mở rộng ini thay vì mở rộng .dll. Ví dụ: mã mẫu trong phần "Thông tin", tên tệp ini tập tin Bug.ini. Để Bug.ini vào cùng một thư mục tập tin Bug.dll.
Lưu ý Hạn chế của phương pháp này có hiệu quả hoạt động tiềm năng để tối ưu hóa không. Nếu bạn sử dụng trình tạo ảnh riêng (Ngen.exe) precompile mô-đun, phương pháp này không áp dụng.
Phương pháp 3
Lựa chọn áp dụng tuỳ chọn NoOptimization MethodImplOptions liệt kê cho các phương pháp vấn đề bằng cách sử dụng lớp MethodImplAttribute .
Lưu ý Phương pháp này vô hiệu hoá tối ưu hóa trình biên soạn JIT và trình tạo ảnh riêng (Ngen.exe) trên một mức độ một phương pháp. Mức độ hiệu suất bị ảnh hưởng khác nhau, tuỳ thuộc vào phương pháp.
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".
Thông tin
Các bước để tái tạo sự cố
-
Tạo một ứng dụng C++ dựa trên .NET Framework 3.5 SP1.
-
Thêm tệp .cpp dự án, tên tệp này tệp Bug.cpp và sau đó dán mã sau trong tệp Bug.cpp.
#using <mscorlib.dll>#include <stdlib.h>
class AcGeVector3d
{
double x, y, z;
public:
__forceinline AcGeVector3d(const AcGeVector3d& src): x(src.x),y(src.y),z(src.z)
{
}
__forceinline AcGeVector3d(double xx, double yy, double zz) : x(xx),y(yy),z(zz)
{
}
__forceinline AcGeVector3d operator / (double val) const
{
return AcGeVector3d (x/val, y/val, z/val);
}
};
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d).m_x)))
namespace Geometry
{
[System::Runtime::InteropServices::StructLayout(System::Runtime::InteropServices::LayoutKind::Sequential)]
public value class Vector3d
{
internal:
double m_x, m_y, m_z;
Vector3d(const AcGeVector3d* obj)
{
GETVECTOR3D(*this) = *obj;
}
public:
Vector3d(double x, double y, double z):m_x(x),m_y(y), m_z(z) {}
Vector3d DivideBy(double value)
{
return Vector3d(&GETVECTOR3D(*this).operator /(value));
}
virtual System::String^ ToString() override
{
return System::String::Format("{0}, {1}, {2}", m_x, m_y, m_z);
}
};
} -
Tập hợp các tập tin Bug.cpp, chạy lệnh sau:
CL /clr /GL /O2 bug.cpp /link /dll /out:bug.dll
-
Tạo một Microsoft Visual C# dự án mới được sử dụng như dự án khách hàng.
-
Tên tập tin mã tệp Test.cs và sau đó dán mã sau trong tệp Test.cs.
using Geometry;namespace Test
{
class Tester
{
static void Main()
{
Vector3d v = new Vector3d(200, 200, 0);
v = v.DivideBy(150);
System.Console.WriteLine("{0}", v);
}
}
} -
Tập hợp các tập tin Test.cs, chạy lệnh sau:
CSC /r:bug.dll test.cs
-
Nhúng manifest vào tệp Test.exe, chạy lệnh sau:
Mt.exe - nologo-biểu hiện bug.dll.manifest-outputresource:test.exe;1
-
Chạy tệp Test.exe.
Thông báo kết quả thực tế là như sau:
1.33333333333333 1.333333333333, 0Tuy nhiên, kết quả mong đợi là như sau:
1.33333333333333, 0, 0
Tham khảo
Để biết thêm thông tin về thuật ngữ cập nhật phần mềm, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
824684 mô tả thuật ngữ chuẩn được sử dụng để miêu tả các bản cập nhật phần mềm Microsoft