Dường như không thể tắt Cập nhật tự động Java


77

Tôi chỉ điều chỉnh máy tính xách tay Windows 7 mới của mình và muốn vô hiệu hóa cập nhật Java tự động (và do đó giết quá trình nền jusched.exe ngớ ngẩn), nhưng tôi dường như không thể tắt nó.

Tôi đã tìm thấy applet Bảng điều khiển Java và tìm thấy các cài đặt trên tab Cập nhật sẽ kiểm soát nó. Tôi có thể tắt chúng, áp dụng chúng và đóng hộp thoại thành công. Nhưng nếu tôi chỉ mở lại bản sao lưu hộp thoại, tôi sẽ thấy rằng những thay đổi không thực sự được thực hiện. Tôi đã thử nó nhiều lần và nó không mất. Có chuyện gì thế?

Tôi cũng đã cố gắng vô hiệu hóa biểu tượng trong khay hệ thống và nhận được hiệu ứng tương tự. Tuy nhiên, việc thay đổi kích thước của bộ đệm tạm thời của Tệp Internet.

Có ý kiến ​​gì không? Cảm ơn!


1
Chỉ cần một chút theo dõi cho các độc giả tương lai: Tôi đang sử dụng phiên bản x64 của Windows 7 và tôi nghĩ đó là vấn đề bắt nguồn từ đâu. Tôi đoán là applet của bảng điều khiển Java đang cố gắng thay đổi cài đặt ở những vị trí sai vì tôi đã cài đặt Java 32 bit trên máy 64 bit của mình (IE thường chạy như một quá trình 32 bit ngay cả trong HĐH 64 nên tôi muốn 32 phiên bản bit của Java).
Scott Bussinger

2
Cũng đang được thảo luận tại Super User: superuser.com/questions/130961
Chris W. Rea

Đoán xem! Trong phiên bản mới nhất của Java JRE 6, tùy chọn bảng điều khiển "Cập nhật" của frickin đã bị loại bỏ!
Hopeeekr

@hopeseekr Nó đã trở lại. :)
Mateen Ulhaq

@ScottBussinger: chính xác vấn đề tương tự với hệ thống Windows 7 thuần 32 bit.
MarcH

Câu trả lời:


80

Trên thực tế, sự cố này là do bảng điều khiển yêu cầu đặc quyền của quản trị viên để cho phép bảng điều khiển Java lưu cài đặt của bạn (nó đã không được sửa trong nhiều năm, nhờ Sun microsystems ).

Trước tiên, bạn cần tìm Bảng điều khiển Java có thể thực thi được, tại một trong các vị trí sau:

C:\Program Files\Java\jre[version]\bin\javacpl.exe

hoặc là

C:\Program Files (x86)\Java\jre[version]\bin\javacpl.exe

Đường dẫn sẽ khác nhau tùy thuộc vào kiến ​​trúc hệ thống của bạn và phiên bản Java bạn đã cài đặt. Ví dụ: phiên bản Java 7 32 bit được cài đặt trên phiên bản Windows 64 bit sẽ có phiên bản:

C:\Program Files (x86)\Java\jre7\bin\javacpl.exe

Khi bạn đã tìm thấy tệp, nhấp chuột phải vào tệp và chọn "Chạy với tư cách quản trị viên".

Từ đó, bỏ chọn "Kiểm tra cập nhật tự động" trên tab Cập nhật và nhấp vào OK. Bạn có thể xác minh rằng cài đặt đã được áp dụng bằng cách điều hướng đến cùng một màn hình như bạn thường làm thông qua Bảng điều khiển.

Bạn cũng có thể kiểm tra các quy trình đang chạy của mình để xem nó jusched.exekhông còn chạy nữa - nó đã tự động chấm dứt khi bạn nhấp vào OK.


3
Đoán xem! Trong phiên bản mới nhất của Java JRE 6, tùy chọn bảng điều khiển "Cập nhật" của frickin đã bị loại bỏ! Nói về MALware.
Hopeeekr

@hopeseekr Đồng ý với bạn! Bây giờ câu trả lời không áp dụng cho JRE 6 ... @Lai Có cách giải quyết nào cho chúng tôi không?
Nam G VU

1
Java 7 có tab Cập nhật một lần nữa.
Iszi

1
trên thực tế, điều này không hoạt động đối với các phiên bản
java7

1
Tab Cập nhật không xuất hiện nếu javacpl.exekhông được mở với các đặc quyền quản trị.
Auron

34

Bạn có thể vô hiệu hóa bản cập nhật bằng khoá đăng ký,

HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy\EnableJavaUpdate

hoặc nếu bạn sử dụng Windows 64 bit

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Update\Policy\EnableJavaUpdate

Đặt thành 0 để tắt khóa này.

Ưu điểm của phương pháp này là nó vô hiệu hóa nó cho tất cả người dùng.


2
Đây là tùy chọn duy nhất hoạt động kể từ JRE 6 Update 21.
Hopeeekr

Tôi đã mở HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Update \ Policy và nó không có bất kỳ khóa hoặc giá trị nào được gọi là 'EnableJavaUpdate'. Chỉ các phím (Mặc định), Quốc gia, PostStatysUrl.
Người nhện

10
trên Win64 (đang chạy windows 7), khóa này hiện có:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Update\Policy\EnableJavaUpdate
ekawas

... mặc dù tùy chọn WOW6432Node cũng kiểm soát phiên bản 64 bit?
Ashley

Cách tiếp cận này vẫn hoạt động trong JRE u33?
blak3r

10

Chỉ cần xóa chương trình khỏi khởi động trong sổ đăng ký - xóa nếu từ

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Cảm ơn, tôi biết rằng tôi có thể xóa mục đăng ký, nhưng tôi không thể hiểu tại sao thực hiện theo cách "đúng" không hoạt động. Tôi nghĩ nó phải là một số loại vấn đề quyền.
Scott Bussinger

1
Đây là câu trả lời hacky nhưng nhanh chóng. Xem câu trả lời vô hồn cho câu trả lời được hỗ trợ.
Ryan Bolger

1
Bạn luôn luôn có thể xóa mà thực thi quá. Chỉ đáng nói.
tội lỗi

9

Trên Windows 7 OEM

Trên hệ thống 64 bit: chạy C: \ Program Files (x86) \ Java \ jre6 \ bin \ javacpl.exe với quyền riêng tư của quản trị viên

Trên hệ thống 32 bit: chạy C: \ Chương trình tập tin \ Java \ jre6 \ bin \ javacpl.exe với quyền riêng tư của quản trị viên

Để thực hiện việc này, hãy làm theo đường dẫn trong trình duyệt Windows Explorer của bạn và Nhấp chuột phải vào javacpl.exe, sau đó chọn "Chạy với tư cách Quản trị viên"

Bỏ chọn tính năng Cập nhật "Kiểm tra cập nhật tự động" và nhấp vào "Không bao giờ kiểm tra" và bạn đã hoàn tất.


Như đã đề cập trong các câu trả lời khác, hộp kiểm đó dường như đã bị mất khoảng 1.6.0_21
jimbo

7

Tải xuống Autorun (live.sysiternals.com/autorun.exe) từ Sysiternals / Microsoft và bỏ chọn "SunJavaUpdateSched" trong tab "Đăng nhập".


Không xuất hiện dưới Logon, nhưng đã làm dưới Mọi thứ.
rwallace

Công cụ Sysiternals là tuyệt vời.
jimbo

1

Bạn có thể có thể làm điều này từ Cấu hình hệ thống (Run: msconfig). Trong tab Khởi động bỏ chọn dịch vụ không mong muốn.


Tôi đã tự hỏi về điều này quá ... tự hỏi tại sao không ai đề cập đến nó để ngăn chặn dịch vụ cập nhật tệ hại đó tự động bắt đầu. Giải pháp dễ nhất thay vì làm rối w registry và các thứ.
killjoy


1

Tôi cần phải làm điều này trong môi trường Active Directory dành cho doanh nghiệp trên nhiều máy. Tôi tìm thấy khá nhiều bài đăng trên Internet, chủ yếu là chi tiết theo nhiều cách khác nhau để thay đổi giá trị đăng ký EnableJavaUpdateEnableAutoUpdateChecktrong HKLMHKCU.

Mặc dù trước đây hoạt động, đó không phải là điều tôi muốn, vì nó đã vô hiệu hóa tab Cập nhật trong bảng điều khiển Java mà tôi muốn giữ lại để chạy thủ công. Việc lật EnableAutoUpdateChecksang 0không hoạt động bất kể tôi đặt nó vào đâu. Tôi không biết liệu có sự thay đổi nào gần đây về cách Java lưu trữ nó hay không, nhưng giá trị đó thậm chí không được gõ vào hộp Windows 7 của tôi. Đó là một giá trị nhị phân, tôi đã cố gắng sao chép và đẩy sang các máy trạm khác nhưng không được.

Tôi đã kết thúc đơn giản là ngăn jusched.exe chạy bằng cài đặt GPO sau :

Users Config → Policies → Admin Templates → System → Don't run specified Windows applications

Điều đó ngăn bản cập nhật chạy tự động, nhưng nó vẫn giữ khả năng chạy thủ công.


Đối với những người đến sau tôi: câu trả lời của prl77 là những gì phù hợp với tôi cho Java 8 trên Win10 x64. Oracle rõ ràng đã đi đến một khóa đăng ký nhị phân cho tính năng đó được kích hoạt lại với mỗi bản cập nhật (và dường như ngẫu nhiên ngay cả khi không có bản cập nhật.) Mặc dù vậy, việc tiếp tục chạy với chính sách nhóm đã làm điều đó.
Logan Jones

0

Cảnh báo: Có vẻ như lần sau khi bạn cài đặt Java mới hơn, nó sẽ quay lại "kiểm tra cập nhật"; ít nhất nó đã làm cho tôi đi Java 6 cập nhật 15 lên Java 6 cập nhật 16 trên Windows 7.

Vì vậy, hiện tại, cách duy nhất tôi tìm thấy để vô hiệu hóa "kiểm tra cập nhật" vĩnh viễn là thực hiện các cài đặt theo kịch bản, chẳng hạn như http://forums.sun.com/thread.jspa?threadID=5198773 hoặc cái này:

blog.stealthpuppy.com/scriptcorner/unattends-install-sun-jre-16-update-10

Có rất nhiều vấn đề cần kiểm tra để cập nhật để luôn bị vô hiệu hóa cho tất cả người dùng và giải pháp tốt nhất có vẻ là JRE 1.6.0_05 Cập nhật tự động - các vấn đề về triển khai liên quan đến tệp integration.properations trong mỗi lần cài đặt.


Hai liên kết đầu tiên bị hỏng.
Peter Mortensen
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.