Áp dụng cho
.NET Framework 3.5 Service Pack 1

Triệu chứng

Hãy xem xét tình huống sau:

  • Bạn chạy ứng dụng Windows Presentation Foundation (WPF) dựa trên Microsoft .NET Framework 3.5 Gói Dịch vụ 1 (SP1).

  • Ứng dụng WPF sử dụng đường ống kết xuất phần cứng.

  • Ứng dụng tải và bỏ tải nhiều tên miền ứng dụng có chứa một hoặc nhiều tùy chỉnh WPF phần bổ trợ.

Trong trường hợp này, ứng dụng gặp phải ngoại lệ System.Runtime.InteropServices.COMException, sau đó ứng dụng gặp sự cố.

Giải pháp

Thông tin cập nhật nóng

Hotfix được hỗ trợ có sẵn từ Microsoft. Tuy nhiên, hotfix này là nhằm sửa chữa chỉ vấn đề được mô tả trong bài viết này. Áp dụng hotfix này chỉ cho hệ thống đang gặp vấn đề cụ thể này. Hotfix này có thể nhận được kiểm tra bổ sung. Do đó, 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 nê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ừ Bộ sưu tập Mã MSDN, hãy truy cập trang web sau của Microsoft:

http://code.msdn.microsoft.com/KB2276690Lưu ý Bộ sưu tập Mã MSDN hiển thị các ngôn ngữ mà hotfix có sẵn. Nếu bạn không thấy ngôn ngữ của mình được liệt kê, đó là vì trang tài nguyên Bộ sưu tập Mã không sẵn dùng cho ngôn ngữ đó. Lưu ý Nếu có sự cố khác xảy ra hoặc nếu cần khắc phục sự cố bất kỳ, bạn có thể phải tạo một yêu cầu dịch vụ riêng biệt. Chi phí hỗ trợ thông thường sẽ áp dụng cho các câu hỏi và sự cố hỗ trợ bổ sung không đủ điều kiện cho hotfix cụ thể này. Để có danh sách đầy đủ các số điện thoại của Bộ phận Dịch vụ Khách hàng và Hỗ trợ của Microsoft hoặc để tạo yêu cầu dịch vụ riêng, hãy truy cập trang web sau của Microsoft:

http://support.microsoft.com/contactus/?ws=support

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

Để áp dụng bản cập nhật nóng này, bạn phải cài đặt .NET Framework 3.5 Gói Dịch vụ 1 (SP1). 

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

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

Thông tin thay thế hotfix

Hotfix này không thay thế bất kỳ hotfix nào khác.

Thông tin tệp

Phiên bản tiếng Anh của hotfix này có các thuộc tính tệp (hoặc các thuộc tính tệp mới hơn) được liệt kê trong bảng sau đây. Ngày và giờ của các tệp này được liệt kê theo Giờ chuẩn quốc tế (UTC). Khi bạn xem thông tin về tệp, tệp đó đã được chuyển đổi thành giờ địa phương. Để tìm ra sự khác biệt giữa UTC và giờ địa phương, hãy dùng tab Múi giờ trong mục Ngày và Giờ trong Panel Điều khiển.

Đối với tất cả các phiên bản dựa trên x86 được hỗ trợ của Windows Server 2003 và Windows XP

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền

Presentationcore.dll

3.0.6920.4033

4,218,880

Ngày 2 tháng 9 năm 2010

01:32

x86

Presentationframework.dll

3.0.6920.4033

5,279,744

Ngày 2 tháng 9 năm 2010

01:28

x86

Presentationhost.exe

4.0.40305.0

295,264

Ngày 2 tháng 9 năm 2010

01:28

x86

Presentationhostdll.dll

3.0.6920.4033

130,408

Ngày 2 tháng 9 năm 2010

01:32

x86

Presentationhostproxy.dll

4.0.31106.0

99,176

Ngày 2 tháng 9 năm 2010

01:32

x86

Windowsbase.dll

3.0.6920.4033

1,249,280

Ngày 2 tháng 9 năm 2010

01:32

x86

Đối với tất cả các phiên bản dựa trên x64 được hỗ trợ của Windows Server 2003 và Windows XP

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền

Presentationcore.dll

3.0.6920.4033

3,997,696

Ngày 2 tháng 9 năm 2010

00:53

x64

Presentationframework.dll

3.0.6920.4033

4,636,672

Ngày 2 tháng 9 năm 2010

00:48

x64

Presentationhost.exe

4.0.31106.0

320,352

Ngày 2 tháng 9 năm 2010

00:48

x64

Presentationhostdll.dll

3.0.6920.4033

171,368

Ngày 2 tháng 9 năm 2010

00:53

x64

Presentationhostproxy.dll

4.0.31106.0

109,928

Ngày 2 tháng 9 năm 2010

00:53

x64

Windowsbase.dll

3.0.6920.4033

1,110,016

Ngày 2 tháng 9 năm 2010

00:53

x64

Đối với tất cả các phiên bản dựa trên x86 được hỗ trợ của Windows Vista Gói Dịch vụ 2 (SP2) và Windows Server 2008 Gói Dịch vụ 2 (SP2)

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền

Presentationcore.dll

3.0.6920.4033

4,218,880

Ngày 9 tháng 9 năm 2010

10:52

x86

Presentationfontcache.exe.config

Not Applicable

161

Ngày 3 tháng 4 năm 2009

21:25

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4003

1,736,024

Ngày 17 tháng 6 năm 2009

08:03

x86

Presentationframework.dll

3.0.6920.4033

5,279,744

Ngày 9 tháng 9 năm 2010

10:52

x86

Presentationhostdll.dll

3.0.6920.4033

130,408

Ngày 9 tháng 9 năm 2010

10:52

x86

Windowsbase.dll

3.0.6920.4033

1,249,280

Ngày 9 tháng 9 năm 2010

10:52

x86

Đối với tất cả các phiên bản dựa trên x64 được hỗ trợ của Windows Vista SP2 và Windows Server 2008 SP2

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền

Presentationcore.dll

3.0.6920.4033

3,997,696

Ngày 9 tháng 9 năm 2010

10:52

x64

Presentationfontcache.exe.config

Not Applicable

161

Ngày 3 tháng 4 năm 2009

20:58

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4003

2,254,168

Ngày 17 tháng 6 năm 2009

08:03

x64

Presentationframework.dll

3.0.6920.4033

4,636,672

Ngày 9 tháng 9 năm 2010

10:52

x64

Presentationhostdll.dll

3.0.6920.4033

171,368

Ngày 9 tháng 9 năm 2010

10:52

x64

Windowsbase.dll

3.0.6920.4033

1,110,016

Ngày 9 tháng 9 năm 2010

10:52

x64

Đối với tất cả phiên bản Windows 7 dựa trên x86 được hỗ trợ

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền

Presentationcore.dll

3.0.6920.5012

4,218,880

Ngày 11 tháng 9 năm 2010

01:29

x86

Presentationfontcache.exe.config

Not Applicable

161

Ngày 10 tháng 6 năm 2009

21:14

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4902

1,736,536

Ngày 10 tháng 6 năm 2009

21:14

x86

Presentationframework.dll

3.0.6920.5012

5,279,744

Ngày 11 tháng 9 năm 2010

01:29

x86

Presentationhostdll.dll

3.0.6920.5012

130,408

Ngày 11 tháng 9 năm 2010

01:29

x86

Presentationhost.exe

4.0.31106.0

295,264

Ngày 11 tháng 9 năm 2010

01:29

x86

Presentationhostproxy.dll

4.0.31106.0

99,176

Ngày 11 tháng 9 năm 2010

01:29

x86

Windowsbase.dll

3.0.6920.5012

1,253,376

Ngày 11 tháng 9 năm 2010

01:29

x86

Đối với tất cả các phiên bản dựa trên x64 được hỗ trợ của Windows 7 và Windows Server 2008 R2

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền

Presentationcore.dll

3.0.6920.5012

3,997,696

Ngày 11 tháng 9 năm 2010

01:28

x64

Presentationfontcache.exe.config

Not Applicable

161

Ngày 10 tháng 6 năm 2009

20:30

Not Applicable

Wpfgfx_v0300.dll

3.0.6920.4902

2,255,176

Ngày 10 tháng 6 năm 2009

20:30

x64

Presentationframework.dll

3.0.6920.5012

4,636,672

Ngày 11 tháng 9 năm 2010

01:28

x64

Presentationhostdll.dll

3.0.6920.5012

171,368

Ngày 11 tháng 9 năm 2010

01:28

x64

Presentationhost.exe

4.0.31106.0

320,352

Ngày 11 tháng 9 năm 2010

01:28

x64

Presentationhostproxy.dll

4.0.31106.0

109,928

Ngày 11 tháng 9 năm 2010

01:28

x64

Windowsbase.dll

3.0.6920.5012

1,114,112

Ngày 11 tháng 9 năm 2010

01:28

x64

Trạng thái

Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".

Cách giải quyết

Để khắc phục sự cố này, hãy tắt đường ống kết xuất phần cứng, sau đó bật đường ống kết xuất phần mềm. Để tắt đường ống kết xuất phần cứng và để cho phép kết xuất phần mềm đường ống, sử dụng một trong các phương pháp sau đây:

  • Đặt liệt kê System.Windows.Interop.RenderMode.Sau đây là một số mã ví dụ đặt liệt kê System.Windows.Interop.RenderMode để cho phép đường ống kết xuất phần mềm khi tải cửa sổ WPF:

    private void OnLoaded(object sender, EventArgs e){System.Windows.Interop.HwndSource hwndSource = PresentationSource.FromVisual(this) as System.Windows.Interop.HwndSource;System.Windows.Interop.HwndTarget hwndTarget = hwndSource.CompositionTarget; hwndTarget.RenderMode = System.Windows.Interop.RenderMode.SoftwareOnly;}
  • Đặt khóa đăng ký DisableHWAcceleration .Quan trọng Mục, phương pháp hoặc tác vụ này chứa các bước cho bạn biết cách sửa đổi sổ đăng ký. Tuy nhiên, có thể xảy ra sự cố nghiêm trọng nếu bạn sửa đổi sổ đăng ký không đúng cách. Do đó, hãy đảm bảo rằng bạn làm theo các bước này cẩn thận. Để bảo vệ tốt hơn, hãy sao lưu sổ đăng ký trước khi bạn sửa đổi. Sau đó, bạn có thể khôi phục sổ đăng ký nếu xảy ra sự cố. Để biết thêm thông tin về cách sao lưu và khôi phục sổ đăng kư, hăy bấm số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:

    322756 Làm thế nào để sao lưu và khôi phục sổ đăng ký trong WindowsCảnh báo Phương pháp này vô hiệu hóa kết xuất phần cứng đường ống cho tất cả các ứng dụng WPF trên máy tính. Vì vậy, phương pháp này không được khuyến khích thường trừ khi khách hàng kiểm soát các môi trường và không quan tâm đến hiệu quả cho tất cả các ứng dụng WPF.

    1. Bấm vào Bắt đầu, bấm vào Chạy, nhập regedit, rồi nhấn ENTER.

    2. Tìm rồi bấm vào khóa con đăng ký sau:

      HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics

    3. Đặt giá trị của mục đăng ký DisableHWAcceleration thành 1.Lưu ý Nếu mục đăng ký DisableHWAcceleration không tồn tại, hãy bấm chuột phải vào khóa phụ của sổ đăng ký, trỏ tới Mới, rồi bấm vào Giá trị Chuỗi để tạo mục nhập sổ đăng ký mới. Nhập DisableHWAcceleration cho tên mục nhập sổ đăng ký mới, bấm đúp vào DisableHWAcceleration, rồi thay đổi dữ liệu giá trị DisableHWAcceleration thành 1.

    4. Thoát khỏi Registry Editor.

Thông tin Bổ sung

Để biết thêm thông tin về đường ống kết xuất phần mềm, hãy truy cập trang web Microsoft Developer Network (MSDN) sau đây:Thông tin chung về quy trình tái tạo phần mềm Để biết thêm thông tin về thiết đặt đăng ký kết xuất WPF, hãy truy cập trang web MSDN sau đây:Thông tin chung về các thiết đặt đăng ký của wpf renderingĐể biết thêm thông tin về việc liệt kê System.Windows.Interop.RenderMode, hãy truy cập trang web MSDN sau:Thông tin chung về việc liệt kê "System.Windows.Interop.RenderMode"

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.