【问题标题】:libcrypto-1_1-x64.dll missing using dot.net Client SolaceSystems.Solclient.Messaging使用 dot.net 客户端 SolaceSystems.Solclient.Messaging 缺少 libcrypto-1_1-x64.dll
【发布时间】:2020-03-11 18:12:29
【问题描述】:

当我们在 Windows 服务器 2016/2019 上创建安全连接时,会收到以下消息:缺少 libcrypto-1_1.dll。

它在 Windows 10 和 Windows 2012 R2 上完美运行。

具体输出如下: 错误 - Sdk:13:38:25 | solClientOS.c:1142 (00001050) 无法加载 库'libcrypto-1_1.dll',错误:指定的模块不能 成立。 |空

这很奇怪,因为 libcrypto-1_1.dll 文件在此文件夹中可用。

这个问题的原因是什么?

【问题讨论】:

  • dll在哪里?该文件应与 c# 可执行文件位于同一文件夹中。
  • 它与 c# 可执行文件位于同一文件夹中。
  • 是否与 Windows 10 和 2012 R2 中的版本相同?它可能是 32 位版本和 64 位版本的东西。如果您的代码是在 32 位模式下编译的,您应该使用 32 位 dll 而不是 64。
  • "是否与 Windows 10 和 2012 R2 中的版本相同?"是的,它是文件夹内容的精确副本。我们的代码是 32 位的,libcrypto-1_1.dll(nuget 包附带)也是如此
  • 您需要与供应商核实。我会猜的。我已经看到很多使用 Net 4.7 的情况,默认加密参数发生了变化,并且不适用于 32 位模式。没有得到任何解决方案的回应。 Net 4.6 也可能出现此问题(也不确定)。我只知道很多人在升级到带有加密模式的 Net 4.7 时遇到了问题。

标签: c# .net solace


【解决方案1】:

产品版本为 1.1.1c included in the Solclient nuget package version 10.8.0 的 libcrypto-1_1.dll 和 libssl-1_1.dll 在 Windows 2016 服务器上无法正常工作。

当我将 1.1.1d 产品版本的 libcrypto-1_1.dll 和 libssl-1_1.dll 复制到已安装的软件包上时,它可以在 Windows 2016 服务器上正常运行。

【讨论】:

    猜你喜欢
    • 2020-07-19
    • 1970-01-01
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    • 2014-01-13
    • 2018-09-09
    • 1970-01-01
    • 2021-06-26
    相关资源
    最近更新 更多