我们在企业环境中的应用程序上遇到了一个非常棘手的问题。任何线索,无论多么微不足道,都会得到调查。
我们有一个客户端应用程序,用 Java Swing 编写,在 Windows 7 下运行,通过企业网络与后端服务器通信。不需要或不允许访问互联网。我们的开发团队希望机器上甚至没有安装 Internet Explorer,但企业组策略推翻了我们的愿望。作为妥协,我们不为用户提供访问 IE 的方法。这些是可以想象到的最封闭的工作站。用户无法访问任何 IE、Word、Excel 等。用户可以运行的唯一应用程序是我们的应用程序。
在调查我们遇到的问题时,我们在任务管理器中注意到,只要用户通过我们应用程序的登录屏幕,就会启动两个 IExplore.exe 实例。这只在我们的生产环境中出现。在我们的实验室环境中,相同的代码运行,但不会导致 IExplore.exe 实例运行。
我们的代码当然不会要求运行 IExplore。我认为 Java Swing 中的某些程序可能会在幕后执行某些操作以启动 IE,但根据我们的实验室经验,这似乎被排除了。
有人能帮助我理解这种情况吗?
答案1
我相信您知道,很多因素都可能导致程序自动启动。以下是一些主要因素:
- 注册表项
- “启动”文件夹
- Java 尝试打开网页
- 系统进程
- 这样的例子不胜枚举……
我的第一个建议是查看你的注册表项(如果可能的话,这可能被锁定了),看看是否有任何东西调用 Internet Explorer。或者,你可以启动 Ubuntu 并手动从机器中删除 Internet Explorer,但这是高度贬值。然后,检查程序中是否有任何内容可能使用 Internet Explorer(例如从网页、API 等获取数据),Java 往往会引发此类奇怪问题。如果其他方法都失败了,您可以说服某人允许您禁用 Internet Explorer。
祝你好运。〜Tsuser