似乎无法禁用Java自动更新

我只是调整我的新的Windows 7笔记本电脑,并希望禁用自动Java更新(从而杀死愚蠢的jusched.exe后台进程),但我似乎无法得到它实际上closures它。

我find了Java控制面板小程序,并在“更新”选项卡上find了应该控制它的设置。 我可以closures它们,应用它们,并成功closures对话框。 但是,如果我立即再次打开对话框备份,我会发现这些更改实际上并没有完成。 我已经尝试了很多次,而且不需要。 怎么了?

我也尝试禁用系统托盘中的图标,并获得相同的效果。 但是,更改Temporary Internet Filescaching的大小仍然有效。

有任何想法吗? 谢谢!

实际上,这个问题是由于控制面板需要pipe理员权限才允许Java控制面板保存您的设置(由于Sun Microsystems ,这个问题还没有被固定)。

首先,您需要findJava控制面板可执行文件,位于以下位置之一:

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

要么

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

path将根据您的系统架构和您安装的Java版本而有所不同。 例如,在64位版本的Windows上安装的32位Java 7版本将包含在:

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

find该文件后,右键单击该文件并select“以pipe理员身份运行”。

从那里,在“更新”选项卡上取消选中“自动检查更新”,然后单击“确定”。 您可以通过与通常通过控制面板导航到相同的屏幕来validation设置已经应用。

您还可以检查正在运行的进程,看看jusched.exe是否不再运行 – 当您单击确定时它会自动终止。

您可以使用registry项禁用更新,

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

或者如果你使用64位Windows

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

设置为0以禁用此键。

这种方法的优点是它为所有用户禁用它。

只需从registry中删除程序启动 – 从HKLM \ SOFTWARE \ Microsoft \ CurrentVersion \ Run中删除

在Windows 7 OEM上

在64位系统上:以pipe理员身份运行C:\ Program Files(x86)\ Java \ jre6 \ bin \ javacpl.exe

在32位系统上:使用pipe理员权限运行C:\ Program Files \ Java \ jre6 \ bin \ javacpl.exe

为此,请按照Windows资源pipe理器浏览器中的path,右键单击javacpl.exe,然后select“以pipe理员身份运行”

取消选中“自动检查更新”更新function,然后单击“从不检查”即可完成。

从Sysinternals / Microsoft下载Autoruns(live.sysinternals.com/autoruns.exe),并取消选中“Logon”标签下的“SunJavaUpdateSched”。

这里是我的脚本安装Java的安装时禁用自动更新组件: http : //blog.stealthpuppy.com/unattended/unattended-install-sun-jre-16-update-10

您可以从系统configuration(运行:msconfig)中做到这一点。 在“启动”选项卡中取消选中不需要的服务。

警告:下次你安装一个更新的Java,它会回到“检查更新”。 至less它为我做了Java 6更新15到Windows 7上的Java 6更新16。

所以现在,我发现永久保持禁用“检查更新”的唯一方法是做脚本安装,如http://forums.sun.com/thread.jspa?threadID=5198773或这一个:

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

有很多gotch-ya的检查更新保持禁用所有用户,最好的解决scheme似乎是JRE 1.6.0_05自动更新 – 部署.properties问题涉及deployment.properties文件在每次安装。

我需要在许多机器上的企业Active Directory环境中执行此操作。 我在互联网上发现了相当多的post,主要是以各种方式详述HKLMHKCUregistry值EnableJavaUpdateEnableAutoUpdateCheck更改。

虽然前者工作,但它不是我想要的,因为它禁用了我想保留手动运行的Java控制面板中的更新选项卡。 将EnableAutoUpdateCheck0不会工作,无论我把它放在哪个configuration单元中。我不知道最近Java存储方式是否有变化,但是在我的Windows 7框中,该值甚至没有DWORDtypes。 这是一个二进制值,我尝试复制并推送到其他工作站,但没有奏效。

我最后只是防止使用以下GPO设置运行jusched.exe:

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

这可以防止更新自动运行,但仍保留手动运行更新的能力。