Lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error" thường gặp khi người dùng mở một ứng dụng hoặc game.
File D3D11.dll là một phần của bản phân phối DirectX 11 và thường được sử dụng bởi các game và ứng dụng yêu cầu xử lý đồ họa nhiều.
Dù hầu hết các lỗi D3D11.dll thường được khắc phục sau khi cài đặt lại bộ sưu tập phần mềm DirectX, nhưng vấn đề này hơi khác. Hầu hết người dùng gặp lỗi này báo cáo rằng cài đặt lại các bộ redistributable không thành công.
Cảnh báo: Đừng cố gắng thay thế phiên bản d3d11.dll của bạn bằng một phiên bản "sạch" từ các trang tải DLL. Nhiều file lưu trữ ở đó chứa mã độc sẽ khiến hệ thống của bạn bị lộ trước các tấn công bảo mật trong tương lai. Trong trường hợp này, cách tiếp cận ưu tiên là đi qua các kênh chính thức.
Nếu bạn đang gặp lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error", các giải pháp dưới đây rất có thể khắc phục vấn đề. Chúng tôi đã xác định một số phương pháp khả thi sẽ giải quyết vấn đề do người dùng trong cùng tình huống đưa ra. Vui lòng làm theo các phương pháp theo thứ tự cho đến khi tìm thấy giải pháp khắc phục tình huống của bạn.
Phương pháp 1: Chạy quét SFC
Trước khi đi sâu vào các kỹ thuật phức tạp, hãy xem quét SFC đơn giản có thể giải quyết vấn đề không. Một số người dùng báo cáo sự cố đã được khắc phục sau khi chạy tiện ích System File Checker.
Lưu ý: System File Checker là tiện ích lưu trữ cục bộ cho phép người dùng quét và khôi phục các file hệ thống Windows bị hỏng. Quét bằng tiện ích SFC sẽ tìm kiếm bất kỳ thay đổi nào bên trong các file hệ thống được bảo vệ. Nếu phát hiện thay đổi, tiện ích sẽ thay thế các file bị hỏng/bị can thiệp bằng các bản sao mới lưu trữ cục bộ.
Làm theo các bước dưới đây để thực hiện quét System File Checker và xem nó có khắc phục được lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error" hay không:
- Mở Command Prompt với quyền quản trị bằng cách truy cập menu Start ở góc dưới bên trái và tìm kiếm "cmd". Sau đó, nhấp chuột phải vào Command Prompt và chọn Run as Administrator.

- Trong Command Prompt quyền cao, gõ "sfc /scannow" và nhấn Enter để bắt đầu quét System File Checker.

- Đợi quét hoàn tất. Tùy thuộc vào kích thước ổ cứng và cấu hình PC, quá trình này sẽ mất ít hơn hoặc nhiều hơn 20 phút.
- Khi quá trình hoàn tất, đóng Command Prompt quyền cao và khởi động lại máy tính.
- Kiểm tra xem lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error" đã được khắc phục ở lần khởi động tiếp theo hay chưa. Nếu vẫn gặp sự cố, hãy chuyển sang Phương pháp 2.
Phương pháp 2: Đăng ký lại file D3D11.dll
Bất kể kết quả ở Phương pháp 1, hãy thử đăng ký lại tất cả các file .DLL trên máy tính và xem có khắc phục được lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error" hay không. Một số người dùng báo cáo vấn đề đã được giải quyết sau quy trình này.
Dưới đây là hướng dẫn nhanh đăng ký lại các file .DLL trên máy tính (kể cả D3D11.dll):
- Truy cập menu Start của Windows (góc dưới bên trái) và gõ "cmd". Sau đó, nhấp chuột phải vào Command Prompt và chọn Run as Administrator để mở Command Prompt quyền cao.

- Trong Command Prompt quyền cao, gõ lệnh sau và nhấn Enter:
for %d in (*.dll) do regsvr32 -s %d - Đợi quá trình hoàn tất. Khi nhận được thông báo xác nhận, đóng cửa sổ Command Prompt quyền cao và khởi động lại PC.
- Ở lần khởi động tiếp theo, khởi động lại máy tính, mở ứng dụng đang hiển thị thông báo lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error" và kiểm tra xem các bước trên có khắc phục được sự cố hay không.
Nếu bạn vẫn gặp cùng lỗi, hãy chuyển sang phương pháp cuối cùng.
Phương pháp 3: Thay thế file d3d11.dll bằng bản sao cục bộ thủ công
Nếu cả hai phương pháp trên đều thất bại, hãy thử cách tiếp cận mạnh tay hơn. Một số người dùng gặp cùng vấn đề đã khắc phục được sau khi lấy quyền sở hữu file d3d11.dll từ thư mục sysWow và thay thế bằng bản sao mới từ thư mục winsxs.
Lưu ý: Hãy nhớ rằng có hai file d3d11.dll khác nhau - một ở thư mục sysWOW và một ở system32. Các bước dưới đây sẽ thực hiện trên file d3d11.dll nằm trong thư mục sysWOW.
Cảnh báo: Các bước dưới đây khá kỹ thuật và nếu không thực hiện đúng có thể tạo ra thêm vấn đề cho PC. Chỉ tiếp tục nếu bạn tin vào khả năng của mình.
Dưới đây là hướng dẫn từng bước để lấy quyền sở hữu file d3d11.dll (từ sysWOW), xóa nó thủ công và thay thế bằng bản sao cục bộ từ thư mục winsxs:
- Truy cập menu Start của Windows (góc dưới bên trái) và gõ "cmd". Sau đó, nhấp chuột phải vào Command Prompt và chọn Run as Administrator để mở Command Prompt quyền cao.

- Dán lệnh sau vào Command Prompt quyền cao và nhấn Enter để lấy quyền sở hữu file d3d11.dll: takeown /f C:\Windows\SysWOW64
Lưu ý: Nếu bạn đang chạy kiến trúc 32-bit, hãy thay thư mục SysWow64 bằng SysWow. - Dù đã có quyền sở hữu file, chúng ta vẫn không thể xóa nó vì chưa có quyền thích hợp. Để có quyền, chúng ta cần chạy lệnh cacls trong Command Prompt quyền cao để cấp toàn quyền cho chính mình. Để làm điều này, dán các lệnh sau vào Command Prompt quyền cao và nhấn Enter:
cacls C:\Windows\System32\en-US\winload.exe.mui /G *appuals*:FLưu ý: *appuals* chỉ là tên gọi thay thế cho tên người dùng của bạn. Để lệnh hoạt động, bạn cần thay thế nó bằng tên người dùng thực tế của mình.
- Ở lời nhắc "Are you sure?", gõ chữ "Y" và nhấn Enter lần nữa. Lúc này, bạn có thể đóng Command Prompt quyền cao an toàn.

- Sau khi hoàn tất bước 4, bạn sẽ có thể xóa file d3d11.dll theo cách thông thường. Cách dễ nhất là điều hướng đến C:\Windows\SysWOW64, tìm file d3d11.dll và xóa nó.

- Tiếp theo, điều hướng đến C:\Windows\WinSxS\wow64_microsoft-windows-directx-direct3d11_31bf3856ad364e35_10.0.16299.248_none_079cb6546cd25135 và sao chép file d3d11.dll sạch từ đó.
Lưu ý: Nếu không tìm thấy d3d11.dll ở vị trí này, hãy dùng thanh tìm kiếm ở góc trên bên phải để tìm d3d11.dll. Nếu tìm thấy nhiều kết quả, hãy sao chép file có ngày mới nhất.- Cuối cùng, dán file d3d11.dll vừa sao chép vào thư mục SysWow (hoặc SysWOW64) và khởi động lại máy tính. Kiểm tra xem lỗi "C:\Windows\SysWOW64\D3D11.dll is either not designed to run on Windows or it contains an error" đã được khắc phục ở lần khởi động tiếp theo hay chưa.