Thông thường, bạn không cài đặt lại một tệp DLL riêng lẻ. DLL hệ thống được khôi phục bằng công cụ Windows, còn DLL của ứng dụng được khôi phục bằng cách cài đặt lại ứng dụng hoặc thành phần chính thức. Vì vậy, nếu cần cài đặt lại DLL , đừng tải tệp từ một trang web không rõ nguồn gốc hoặc sao chép vào thư mục hệ thống: Windows và các chương trình tìm thư viện dựa trên vị trí, kiến trúc và các phần phụ thuộc. Dưới đây là bốn cách dành cho Windows 10 và 11: trước hết hãy xác định loại lỗi, sau đó chọn hướng xử lý phù hợp.

Cách xác định DLL cần khôi phục

DLL thuộc về Cách xử lý
Thành phần hệ thống Windows Chạy DISM, sau đó chạy SFC.
Một ứng dụng hoặc trò chơi cụ thể Dùng chức năng sửa chữa hoặc cài đặt lại ứng dụng.
Visual C++ Runtime Cài đặt gói Redistributable chính thức của Microsoft.
DirectX hoặc môi trường thời gian chạy khác Cài đặt thành phần chính thức do nhà phát triển chương trình chỉ định.
Nguồn không rõ Trước tiên hãy chẩn đoán; không thay thế tệp thủ công.

Hãy ghi lại chính xác tên tệp và chương trình hiển thị lỗi thiếu DLL. Nếu sự cố xuất hiện trong nhiều ứng dụng hoặc thành phần Windows, nguyên nhân có khả năng thuộc về hệ thống. Nếu lỗi chỉ xảy ra trong một trò chơi hoặc chương trình, trước tiên hãy kiểm tra cài đặt và các phần phụ thuộc của chương trình đó.

So sánh nhanh các cách cài đặt lại DLL

Cách thực hiện Phù hợp nhất cho Hiệu quả Công sức của người dùng
DISM và SFC Tệp hệ thống Windows và lỗi xảy ra trong nhiều chương trình Cao khi thành phần hệ thống bị hỏng Trung bình
Fionn DLL Fixer Nguyên nhân không rõ, phần phụ thuộc và nhiều lỗi Chẩn đoán và sửa chữa tự động Thấp
Cài đặt lại ứng dụng hoặc thành phần Một chương trình, trò chơi hoặc môi trường thời gian chạy đã biết Cao khi nguyên nhân cục bộ Trung bình
Khôi phục hệ thống Lỗi sau thay đổi Windows gần đây Phụ thuộc vào điểm khôi phục có sẵn Trung bình

Cách 1: khôi phục DLL hệ thống bằng công cụ Windows

Khi nào nên dùng: lỗi xuất hiện sau khi Windows cập nhật, ảnh hưởng đến nhiều chương trình hoặc liên quan đến thành phần hệ thống. Microsoft khuyến nghị khôi phục ảnh Windows bằng DISM trước, rồi kiểm tra tệp hệ thống bằng SFC.

  1. Mở «Windows Terminal (Quản trị viên)» hoặc Dấu nhắc Lệnh với quyền quản trị viên.
  2. Nhập DISM.exe /Online /Cleanup-image /Restorehealth và chờ lệnh hoàn tất. Lệnh DISM khôi phục ảnh Windows
  3. Nhập sfc /scannow và chờ quá trình kiểm tra hoàn tất.
  4. Khởi động lại máy tính.
  5. Mở chương trình đã gặp lỗi.

Kiểm tra: SFC đã hoàn tất và thông báo lỗi ban đầu không lặp lại sau khi khởi động lại. Xem chi tiết trình tự trong hướng dẫn System File Checker của Microsoft .

Cách 2: chẩn đoán và sửa DLL bằng Fionn DLL Fixer

Lựa chọn phù hợp khi chưa rõ nguyên nhân: Fionn DLL Fixer kiểm tra các vấn đề DLL và thành phần hệ thống Windows có thể phát hiện được. Công cụ hỗ trợ quét toàn bộ hoặc theo nhóm, sửa chữa và kiểm tra lại; điều này hữu ích khi khó tự xác định phần phụ thuộc, thành phần hoặc sự không khớp phiên bản.

  1. Khởi chạy Fionn DLL Fixer và chờ kết quả quét DLL và hệ thống tự động. Khởi chạy Fionn DLL Fixer
  2. Sau khi quét xong, nhấp «Sửa chữa» để bắt đầu khắc phục các vấn đề đã phát hiện. Sau khi quét xong, nhấp Sửa chữa để tự động khắc phục mọi lỗi DLL và hệ thống đã phát hiện
  3. Chờ quá trình hoàn tất; trong khi sửa chữa, nút hiển thị «Đang sửa». Chờ trong khi quá trình sửa chữa đang diễn ra
  4. Nhấp «Đồng ý» trong hộp thoại xác nhận và khởi động lại máy tính nếu được yêu cầu. Khi sửa chữa hoàn tất, nhấp Đồng ý trong hộp thoại xác nhận
  5. Nếu sự cố vẫn còn, nhấp «Kiểm tra lại»; nếu phát hiện vấn đề mới, hãy chọn «Sửa chữa» lần nữa. Nếu sự cố vẫn tiếp diễn sau khi khởi động lại, nhấp Kiểm tra lại để quét lần nữa

Kiểm tra: sau khi kiểm tra lại, hãy chạy chương trình hoặc trò chơi đã hiển thị lỗi.

Cách 3: khôi phục ứng dụng hoặc thành phần chính thức

Khi nào nên dùng: chỉ một chương trình hoặc trò chơi không khởi chạy được, hoặc tên DLL cho thấy rõ một môi trường thời gian chạy. Cài đặt lại sẽ khôi phục các tệp riêng của ứng dụng; với Visual C++ và DirectX, hãy dùng trình cài đặt chính thức do nhà phát triển khuyến nghị.

  1. Ghi lại tên ứng dụng và chính xác thông báo lỗi.
  2. Đóng chương trình.
  3. Mở «Cài đặt» → «Ứng dụng» → «Ứng dụng đã cài đặt» rồi dùng «Sửa chữa» nếu tùy chọn này có sẵn.
    Mục sửa chữa ứng dụng trong phần Ứng dụng đã cài đặt của Windows
  4. Nếu không có tùy chọn sửa chữa hoặc cách này không hiệu quả, hãy gỡ ứng dụng và khởi động lại Windows.
  5. Cài đặt bản mới từ nguồn chính thức của nhà phát triển hoặc cửa hàng nơi bạn đã lấy chương trình.
  6. Nếu nhà phát triển chỉ định Visual C++, DirectX hoặc thành phần khác, hãy cài đặt từ trang chính thức của nhà cung cấp.

Kiểm tra: chính chương trình gặp lỗi khởi chạy mà không còn thông báo cũ. Nếu lỗi cũng xuất hiện ở các ứng dụng khác, hãy quay lại khôi phục hệ thống hoặc chẩn đoán.

Cách 4: dùng khôi phục hệ thống

Khi nào nên dùng: lỗi bắt đầu sau khi cài trình điều khiển, chương trình hoặc bản cập nhật, và có điểm khôi phục được tạo từ trước.

  1. Nhập «Tạo điểm khôi phục» vào tìm kiếm Windows và mở mục tìm thấy.
    Tìm mục tạo điểm khôi phục trong Windows
  2. Trong thẻ «Bảo vệ hệ thống», chọn «Khôi phục hệ thống».
    Thẻ Bảo vệ hệ thống trong cài đặt Windows
  3. Chọn điểm được tạo trước khi xuất hiện lỗi DLL.
  4. Kiểm tra các chương trình bị ảnh hưởng và xác nhận khôi phục.
  5. Sau khi khởi động lại, kiểm tra ứng dụng gặp sự cố.

Kiểm tra: Windows khởi động và ứng dụng mở mà không có lỗi ban đầu. Nếu không có điểm phù hợp, hãy dùng phương pháp khác.

System32 hay SysWOW64: không nên sao chép DLL vào đâu

Trên Windows 64 bit, thư mục System32 chủ yếu chứa thành phần hệ thống 64 bit, còn SysWOW64 phục vụ môi trường 32 bit. Cơ chế WOW64 cũng áp dụng chuyển hướng hệ thống tệp. Vì vậy, bạn không thể «đoán» thư mục chỉ dựa vào tên DLL một cách đáng tin cậy: sao chép thủ công có thể không khắc phục lỗi hoặc gây xung đột phiên bản. Hãy khôi phục nguồn gốc của vấn đề: Windows, ứng dụng hoặc gói phần phụ thuộc chính thức.

Có cần đăng ký DLL bằng regsvr32 không

Không, đừng dùng regsvr32 như cách sửa lỗi thiếu DLL chung. Tiện ích này dùng để đăng ký các DLL hỗ trợ cơ chế đăng ký tương ứng. Việc thiếu tệp hoặc lỗi tải không có nghĩa là đăng ký sẽ giúp ích. Trước hết, hãy xác định thư viện là thành phần của Windows, ứng dụng hay môi trường thời gian chạy.

Kết luận

Để khôi phục DLL an toàn trên Windows, đừng bắt đầu bằng việc tìm một tệp riêng lẻ mà hãy xác định nguồn lỗi. Khi lỗi xảy ra trong nhiều chương trình, hãy chạy DISM và SFC. Nếu sự cố chỉ giới hạn ở một chương trình, hãy sửa chữa hoặc cài đặt lại chương trình đó cùng thành phần chính thức của nó. Khi chưa rõ nguyên nhân hoặc có nhiều thông báo, Fionn DLL Fixer giúp kiểm tra các vấn đề DLL và thành phần hệ thống có thể phát hiện được, thực hiện sửa chữa rồi kiểm tra lại. Sau mỗi phương pháp, hãy khởi động lại Windows nếu cần và chạy đúng ứng dụng gặp sự cố. Nếu lỗi vẫn còn, hãy gửi chính xác thông báo lỗi cho nhà phát triển.

Câu hỏi thường gặp

Có thể tải một DLL rồi đặt vào System32 không?

Không nên. Tệp có thể không phù hợp với phiên bản chương trình, kiến trúc hoặc nguồn cài đặt. An toàn hơn là khôi phục Windows, ứng dụng hoặc thành phần chính thức.

Vì sao System32 chứa tệp 64 bit còn SysWOW64 chứa tệp 32 bit?

Đây là một phần của khả năng tương thích WOW64 trên Windows 64 bit. Do chuyển hướng hệ thống tệp, thay thế thủ công trong các thư mục này đặc biệt không đáng tin cậy.

Có phải lúc nào cũng cần chạy DISM trước SFC không?

Khi khôi phục thành phần hệ thống, Microsoft khuyến nghị chạy DISM trước rồi đến SFC. Với lỗi của một chương trình, thông thường nên kiểm tra cài đặt của chương trình đó trước.

regsvr32 có giúp xử lý mọi lỗi DLL không?

Không. Công cụ này chỉ dành cho DLL hỗ trợ đăng ký. Thông báo thiếu DLL tự nó không phải là lý do để chạy regsvr32.

Làm gì nếu lỗi quay lại sau khi cài đặt lại?

Hãy đối chiếu chính xác tên DLL, kiểm tra thành phần chính thức cần thiết và xác nhận lỗi không xuất hiện ở các chương trình khác. Sau đó, hãy kiểm tra hệ thống hoặc chẩn đoán DLL.