Java小程序下载&;启动exe;exe无法显示弹出窗口

本文关键字:exe 显示 窗口 启动 程序下载 amp Java | 更新日期: 2023-09-27 18:29:38

我正在使用Java小程序成功下载并启动C#应用程序。C#应用程序在某些情况下尝试安装X509证书。

这将触发系统提示"您将要安装证书…",并带有"是"或"否"按钮(焦点设置为"否")。

从小程序启动时,我看不到此弹出窗口。似乎有人用"不"来否定它。事实上,即使是"你好世界"的信息框也不会出现。

如果我只是双击一个应用程序,它就可以正常工作。

如有任何帮助,我们将不胜感激。非常感谢。

Java小程序下载&;启动exe;exe无法显示弹出窗口

您可能会尝试从C#可执行文件请求完全信任,但我认为从Java小程序调用它是不可能的。

向程序集授予FullTrust

相反,您可以在建立连接时验证证书,而无需使用C#或Java进行安装。您必须将服务器证书的哈希与从应用程序设置或硬编码常量中检索到的值进行比较。

在C#中,您可以使用验证代码添加一个回调对象来注册回调。

ServicePointManager.ServerCertificateValidationCallback += 
    OnServerCertificateValidationCallback;

并将此代码作为回调方法。

private static bool OnServerCertificateValidationCallback(object sender, 
    X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
  return certificate.GetCertHashString()
      .Equals(certificateHash, StringComparison.InvariantCultureIgnoreCase);
}

在Java中,我不能透露我使用的代码,但它的灵感来自于此存储库中的EasySLSocketFactoryEasy X509TrustManager类。这是安卓代码,但我不认为它取决于任何安卓特定的功能。

http://code.google.com/p/exchangeit/source/browse/trunk/src/com/byarger/exchangeit/