我正在处理一个非常具体的问题。我正在开发一个需要访问 Firefox 证书存储的小程序(不,不幸的是他们想要一个小程序,Java Web Start 不适用)。
Mozilla 提供 JSS(Java 网络安全服务),在给定 Firefox(或 Thunderbird)配置文件目录的情况下,程序员可以访问所有证书和多个加密设施。
现在,问题来了。我签名的小程序可以执行 Java 程序允许执行的任何操作。这样我就可以加载运行 JSS 所需的 native 库。问题是我在使用它时遇到了访问冲突,我知道原因。崩溃发生在一个名为 mozcrt19.dll 的模块中,该模块似乎是 Mozilla 的“自定义”C 运行时库,而 jss4.dll 和 friend 很可能是在 MS 标准 C 运行时上进行测试的。如果未加载 mozcrt19.dll,则不会发生崩溃,即。小程序在浏览器地址空间之外运行,例如使用 Java Web Start。
简而言之,问题是:由于摆脱该模块的唯一方法是突破 Firefox 地址空间,因此如何在没有 Java Web Start 的情况下运行我的 java applet ,超出该地址空间?或者,你能建议我任何解决方法、技巧、黑客或其他任何方法来达到相同的效果吗?我愿意接受任何建议。
提前致谢。
最佳答案
您不必在单独的地址空间中运行小程序本身。您可以让它启动一个单独的进程来访问证书,并与在浏览器进程中运行的小程序进行通信。
关于java - 在与 Firefox 镜像不同的地址空间中运行小程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5749320/