Điều này có thể xảy ra nếu trình gỡ cài đặt của chương trình được đặt Program Files
, nhưng trình cài đặt không đặt dấu ngoặc kép quanh đường dẫn khi lưu trữ vị trí trong sổ đăng ký. Kết quả là Windows cố gắng thực thi (ví dụ) C:\Program Files\ProgramName\uninstall.exe
, nhưng không có dấu ngoặc kép, nó sẽ xem C:\Program
là tên thực thi và Files\ProgramName\uninstall.exe
là đối số dòng lệnh.
Để khắc phục điều này, hãy thử các bước sau:
- Mở
regedit.exe
- Hướng đến
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall
- Xác định vị trí khóa tương ứng với chương trình bạn đang cố gắng gỡ cài đặt. Hầu hết các chương trình có thể sẽ được liệt kê bởi GUID của họ, vì vậy, hoặc bước qua tất cả hoặc đi đến Chỉnh sửa -> Tìm để tìm kiếm chương trình của bạn.
- Trong ngăn bên phải, tìm kiếm một giá trị được gọi là UninstallString . Nhấp đúp vào nó và đặt dấu ngoặc kép xung quanh đường dẫn. Chỉ là đường dẫn, mặc dù (từ
C:\...
đến ...exe
), không phải bất kỳ đối số nào có thể đi theo nó. Nếu nghi ngờ, hãy đăng giá trị hiện tại ở đây.
- Hãy thử gỡ cài đặt chương trình một lần nữa. Nếu nó vẫn không hoạt động, hãy đăng giá trị ban đầu của UninstallString tại đây.
- Tùy chọn: kiểm tra trang web của tác giả chương trình để biết phiên bản cập nhật lưu trữ thông tin gỡ cài đặt chính xác.
Về mặt lý thuyết, bạn cũng có thể sao chép trình gỡ cài đặt của chương trình (giả sử đó là .exe và bạn có thể tìm thấy nó) C:\
và đổi tên thành Program.exe
, nhưng tôi không chắc liệu nó có hoạt động hay không. Bạn cũng có thể lấy phiên bản chính xác của UninstallPath và lưu nó vào một tệp bó được gọi C:\Program.bat
, có thể sẽ hoạt động, nhưng vẫn là một giải pháp cồng kềnh hơn so với ở trên. Tôi chỉ liệt kê các phương pháp này cho mục đích hoàn chỉnh.
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall