Tệp comdlg32.ocx là một phần của bộ thư viện Visual Basic Runtime và không có sẵn trên máy tính theo mặc định. Nó thuộc bộ thư viện này và được sử dụng bởi nhiều ứng dụng khác nhau. Khi ứng dụng cần tệp này gặp sự cố, thông báo lỗi sau có thể xuất hiện:
Component comdlg32.ocx or one of its dependencies not correctly registered: a file is missing or invalid.
Thông báo này cho thấy tệp bị thiếu hoặc hỏng. Việc khắc phục sự cố này không quá khó khăn vì nhiều người dùng đã chia sẻ các phương pháp họ sử dụng để giải quyết. Hãy tham khảo các giải pháp dưới đây!
Nguyên nhân gây lỗi thiếu 'comdlg32.ocx' trên Windows
Lỗi thiếu comdlg32.ocx trên Windows do hai nguyên nhân chính gây ra. Chúng tôi liệt kê dưới đây để bạn kiểm tra và希望能更接近最终解决方案!
- Vấn đề với tệp 'comdlg32.ocx' – Nếu tệp bị thiếu, hỏng hoặc chưa được đăng ký, bạn có thể cần thay thế bằng phiên bản hoạt động và đăng ký lại bằng Command Prompt. Có thể ứng dụng gây sự cố không có quyền truy cập tệp, vì vậy hãy đảm bảo cấp quyền sở hữu và truy cập!
- Kiểm soát tài khoản người dùng (UAC) – Việc tắt UAC đã giúp nhiều người dùng giải quyết vấn đề, nhưng phương pháp này chủ yếu phụ thuộc vào ứng dụng gây lỗi.
Giải pháp 1: Đăng ký lại tệp
Nếu tệp comdlg32.ocx trên máy tính bị thiếu hoặc hỏng, cách tốt nhất là tải xuống một tệp hoạt động và đăng ký lại bằng Command Prompt. Các bước khá đơn giản nhưng hãy làm theo hướng dẫn cẩn thận vì bạn đang làm việc với các tệp hệ thống.
- Nhấp vào liên kết này để tải xuống tệp comdlg32.ocx hoạt động trên máy tính. Nhấp vào liên kết sẽ bắt đầu tải xuống ngay lập tức. Tìm tệp trên máy tính, nhấp chuột phải và chọn Sao chép từ menu ngữ cảnh xuất hiện.
- Tiếp theo, mở mục Thư viện trên máy tính gặp sự cố hoặc mở bất kỳ thư mục nào và nhấp vào tùy chọn This PC từ menu bên trái.
- Điều hướng đến vị trí sau trên máy tính để tìm thư mục cần sao chép tệp vào:
C:\Windows\System32 >> Windows 32-bit C:\Windows\SysWOW64 >> Windows 64-bit
- Nhấp chuột phải vào bất kỳ đâu trong thư mục và chọn Dán từ menu ngữ cảnh. Bạn có thể cần cấp quyền quản trị viên. Xác nhận mọi lời nhắc để thay thế tệp hiện tại tại đó.
- Tìm kiếm "Command Prompt" bằng cách gõ trực tiếp vào menu Start hoặc nhấn nút tìm kiếm bên cạnh. Nhấp chuột phải vào kết quả đầu tiên và chọn "Run as administrator".
- Ngoài ra, bạn cũng có thể dùng tổ hợp phím Windows Logo Key + R để mở hộp thoại Run. Gõ "cmd" vào hộp thoại và dùng tổ hợp Ctrl + Shift + Enter để mở Command Prompt với quyền quản trị.
- Gõ lệnh sau vào cửa sổ và nhấn Enter sau khi gõ xong.
regsvr32 /u Comdlg32.ocx regsvr32 /i Comdlg32.ocx
- Thử mở ứng dụng báo lỗi thiếu 'comdlg32.ocx' và kiểm tra xem sự cố có còn xuất hiện không!
Giải pháp 2: Chạy chương trình ở chế độ tương thích với quyền quản trị
Chạy chương trình ở chế độ tương thích với phiên bản Windows cũ hơn phiên bản hiện tại đã giúp nhiều người dùng. Trong một số trường hợp, chạy file thực thi của chương trình gây sự cố với quyền quản trị cũng khắc phục được lỗi comdlg32.ocx. Bạn có thể thử cả hai hoặc một trong hai cùng lúc. Lưu ý phương pháp này chủ yếu phụ thuộc vào chương trình báo lỗi!
- Tìm file thực thi của chương trình và thay đổi thuộc tính bằng cách nhấp chuột phải vào mục trên Desktop, menu Start hoặc cửa sổ kết quả tìm kiếm, chọn Properties. Chuyển đến tab Compatibility và tích vào ô Run this program as an administrator.

- Trong phần Compatibility mode, tích vào ô Run this program in compatibility mode for và chọn Windows 8 hoặc 7 từ danh sách thả xuống trước khi chấp nhận thay đổi. Nếu tùy chọn này đã được tích, hãy bỏ tích hoàn toàn.
- Xác nhận các hộp thoại yêu cầu đặc quyền quản trị. Chương trình sẽ khởi chạy với quyền quản trị từ bây giờ. Mở bằng cách nhấp đúp vào biểu tượng và kiểm tra xem lỗi còn xuất hiện không.
Giải pháp 3: Thay đổi quyền sở hữu và cấp toàn quyền cho tệp 'comdlg32.ocx'
Nếu ứng dụng báo lỗi không thể truy cập đúng tệp comdlg32.ocx, lỗi sẽ tiếp diễn. Tuy nhiên, bạn có thể thay đổi chủ sở hữu và quyền限 cho tệp này để mọi người đều truy cập được. Tất nhiên, bạn cần quyền quản trị để thực hiện các bước dưới đây!
- Mở mục Thư viện hoặc bất kỳ thư mục nào, nhấp vào This PC từ menu bên trái.
- Điều hướng đến vị trí chứa tệp 'comdlg32.ocx':
C:\Windows\System32 >> Windows 32-bit C:\Windows\SysWOW64 >> Windows 64-bit
- Bạn cần lấy quyền sở hữu tệp ocx trước. Nhấp chuột phải vào tệp, chọn Properties, chuyển tab Security, nhấp Advanced. Cửa sổ "Advanced Security Settings" xuất hiện. Tại đây bạn cần thay đổi Owner.
- Nhấp liên kết Change bên cạnh nhãn "Owner:". Cửa sổ "Select User or Group" xuất hiện.

- Chọn tài khoản người dùng qua nút Advanced hoặc gõ tên tài khoản vào ô 'Enter the object name to select' và nhấp OK. Thêm tài khoản Everyone.
- Nhấp nút Add bên dưới, sau đó nhấp nút Select a principal ở trên. Chọn tài khoản người dùng tương tự và nhấp OK. Thêm tài khoản Everyone.
- Trong phần Basic permissions, chọn Full control trước khi áp dụng thay đổi.

- Kiểm tra xem sự cố đã được giải quyết và thông báo lỗi 'comdlg32.ocx' còn xuất hiện không!
Giải pháp 4: Tắt UAC
Tắt UAC có thể hữu ích khi lỗi xuất hiện trong các chương trình cụ thể. UAC không phải tính năng bảo mật chính yếu, nó chỉ nhắc nhở khi bạn thực hiện thay đổi quan trọng. Tắt nó sẽ loại bỏ các lời nhắc phiền toái khi mở công cụ hệ thống.
- Mở Control Panel bằng cách tìm kiếm trong menu Start. Hoặc dùng Windows Key + R, gõ "control.exe" vào hộp Run và nhấp OK.
- Thay đổi View by thành Large Icons, tìm User Accounts.

- Mở và nhấp nút "Change User Account Control Settings". Bạn sẽ thấy các mức độ khác nhau trên thanh trượt bảo mật.
- Giảm giá trị xuống một cấp nếu đang ở mức cao nhất, kiểm tra xem có giúp ích không sau khi chạy chương trình gây lỗi. Lặp lại nếu lỗi vẫn xuất hiện.

- Chúng tôi khuyên bạn tắt hoàn toàn UAC tạm thời để chương trình khởi chạy thành công, sau đó có thể bật lại.