如何从 Windows 10 PC 上卸载损坏的 Java 辅助技术 - AccessBridge 副本

How do I uninstall a corrupt copy of Java's Assistive Technology - AccessBridge from a Windows 10 PC

我公司销售的一款 Java 应用程序神秘地停止为我们的一位客户工作。它一直在工作,但现在无法启动。他在尝试启动应用程序时遇到的错误是:"java.awt.AWTError: Assistive Technology not found..."。我研究了这个问题,我认为这是由其他一些 java 应用程序引起的,这些应用程序错误地安装了“java se accessbridge”,最终损坏了他 PC 上的所有 java 应用程序。参见:

https://www.avnirvana.com/threads/java-install-error-any-ideas-on-the-fix.2178/

Exception in thread "main" java.awt.AWTError: Assistive Technology not found: com.sun.java.accessibility.AccessBridge error

https://docs.oracle.com/javase/accessbridge/2.0.2/setup.htm#uninstalling-jab

我已经让客户卸载了我们的应用程序,在他的 PC 上卸载了 Java 的所有副本,并删除了在“%WINDOWSHOME%\SYSWOW64”和“%”中找到的所有 WindowsAccessBridge.dll 副本WINDOWSHOME%\SYSTEM32'。现在,他在尝试重新安装我们的应用程序时从 Install4j 得到了同样的错误。我没有要求他尝试重新安装 Assistive Technology-AccessBridge,因为我们的应用程序不需要它,而且安装看起来很复杂,需要一些手动步骤。

似乎确实有解决方法。根据这篇文章: https://deciphertools.com/blog/2016-05-09-assistive-technology-not-found/

您可以通过添加以下内容来阻止 jre 加载 AccessBridge:

-Djavax.accessibility.assistive_technologies 
-Djavax.accessibility.screen_magnifier_present=false

到应用程序的 vmoptions 文件。我想让他将此添加到我们的 vmoptions 文件中,但他无法将安装程序安装到 运行,因为它得到了同样的错误。

我的问题有两个: 我还可以让客户执行哪些其他操作来移除 Assistive Technology-AccessBridge?

否则,我如何修改 install4j 的 vmoptions 文件,以便他可以安装我们的应用程序并修改其 vmoptions 文件?

出于安全原因,安装程序不会读取 .vmoptions 文件。您可以像这样在命令行上传递 VM 参数:

installer.exe -J-Djavax.accessibility.assistive_technologies -J-Djavax.accessibility.screen_magnifier_present=false