Quay lại bị treo .MSI cài đặt từ dòng lệnh


9

Chúng tôi đã triển khai trình cài đặt Java cho một số lượng lớn máy và nó đã đóng băng khoảng một nửa trong số chúng. Bây giờ, các triển khai tiếp theo đều thất bại vì thông báo sau:

Người dùng 'HỆ THỐNG' trước đây đã bắt đầu cài đặt cho sản phẩm 'Cập nhật Java 7 10'. Người dùng đó sẽ cần chạy lại cài đặt đó trước khi họ có thể sử dụng sản phẩm đó. Cài đặt hiện tại của bạn sẽ tiếp tục.

Theo dõi bởi:

Lỗi 1704. Một bản cài đặt cho Java 7 Update 10 hiện đang bị treo. Bạn phải hoàn tác các thay đổi được thực hiện bởi cài đặt đó để tiếp tục. Bạn có muốn hoàn tác những thay đổi đó?

Nếu bạn tương tác chạy một cài đặt, điều này là tốt. Bạn chỉ cần nhấp vào "OK" và sau đó "Có", và nó tiếp tục. Nhưng nếu bạn chạy cài đặt dòng lệnh, nó sẽ dừng lại. Làm thế nào chúng ta có thể hủy cài đặt bị đình chỉ từ dòng lệnh?


Vì vậy, khi bạn nói "chạy tương tác", bạn có nghĩa là chạy tập lệnh hay chỉ chạy trình cài đặt java bình thường?
tony roth

Chà, tôi đã triển khai một tập lệnh chạy trong nền để cài đặt Java. Nó bị khóa trên rất nhiều máy và để lại một bản cài đặt bị treo. Bây giờ, mọi cài đặt im lặng tôi chạy thoát với Lỗi 1704. Nếu tôi chạy cài đặt tương tác (nghĩa là tôi đăng nhập, bấm đúp vào .MSI và chạy qua các lời nhắc), nó cho phép tôi hủy cài đặt bị treo. Làm cách nào tôi có thể hủy cài đặt bị treo đó từ dòng lệnh?
Kasius

ok tuyên bố này "Tôi đã triển khai một tập lệnh chạy trong nền để cài đặt Java." Vì vậy, khi bạn đang làm điều này, bạn đang chạy nó ở mặt sau với cùng một người như trong "HỆ THỐNG" người dùng?
tony roth

có thể thử gỡ cài đặt im lặng docs.oracle.com/javase/1.5.0/docs/guide/deployment/ mẹo
tony roth

SCCM chạy cài đặt âm thầm như HỆ THỐNG. Nếu tôi chạy cài đặt tương tác, như bất kỳ ai, nó cho phép tôi hủy cài đặt bị treo.
Kasius

Câu trả lời:


8

Theo tôi biết, không thể hủy cài đặt MSI bị treo khỏi dòng lệnh bằng MSIEXEC (nó không có tham số nào cho việc đó).

Dù sao đi nữa, bạn có thể thử chạy lệnh sau:

REG DELETE HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress

Khóa này được tạo khi có cài đặt đang diễn ra. Xóa nó sẽ cho phép bạn chạy lại thiết lập.


thêm a / f để buộc xóa mà không có câu hỏi (ví dụ: đối với tập lệnh)
higuita

3

Nếu câu trả lời của Tomas không giải quyết được vấn đề, bạn có thể dùng thử Tiện ích MsiZap.exe .

Về cơ bản, nó cũng loại bỏ siêu dữ liệu do các cài đặt MSI để lại, nhưng nó không yêu cầu bạn phải tìm hiểu tất cả các vị trí lưu trữ thông tin.

Ví dụ: xóa thông tin đầu vào:

msizap.exe p

hoặc xóa thông tin rollback:

msizap.exe s

msizap.exe có vấn đề với các phiên bản Windows mới hơn. Nó không nên được sử dụng một cách bừa bãi. Đây là một công cụ thay thế (chưa được kiểm tra bởi tôi).
Stein Åsmul

0

Tôi phát hiện ra rằng trong Windows 10 (x64), bạn có thể cố gắng xóa khóa không phải trong HKLM mà trong nhánh đăng ký người dùng hiện tại HKEY_USERS \ SXX-XX -... \ Software \ Microsoft \ Windows \ CurrentVersion \ Installer \ InProTHER

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.