`

Ruby OpenSSL---没有找到 SSLEAY32.dll, 因此这个应用程序未能启动. 重新安装应用程序可能会修复此问题。

阅读更多

    今天装了个ruby-1.9.1-p129-i386-mswin32, 在下载的时候官网上明显提示要额外装一些组件, 原文是这样说的:Please note that some of the above binaries will require manual download and installation of additional components detailed on this page. Please ensure you’ve followed/performed these steps prior reporting a bug.

    刚好呢,我也需要OpenSSL这个东西, 大家都知道到在1.8.6以及以前的版本中是不支持OpenSSL的, 不以我以前的做法是把1.9里的OpenSSL的rb文件copy到我的rails项目中用,现在我直接用1.9就不用那么麻烦了。

    按上面英文里说的进到this page里, 就可以下载一个OpenSSL组件ZIP包, 我下的是openssl-0.9.8d-1-mswin3, 然后解压, 把bin/libeay32.dll文件拷到ruby安装目录下的bin目录里(当然这个目录是配置到系统环境变量里的), 但是当我在系统的控制台里运行gem命令时系统会弹出一个对话框,里面写着:“没有找到 SSLEAY32.dll, 因此这个应用程序未能启动. 重新安装应用程序可能会修复此问题。”在网上搜了一下,发现是因为没有找到ssleay32.dll文件, 但是在我解压里的ZIP包里确实没有ssleay32.dll文件, 所以我又另下了一个openssl-0.9.8k_WIN32.zip然后在解压后的bin目录里找到了ssleay32.dll文件,然后拷到ruby安装目录/bin里. 这样就OK了。

    对于OpenSSL还要注意一点: 据说openssl在版本升级之后, 将在win32平台上编译生成的文件名libssl32.dll修改成了ssleay32.dll,libeay32.dll的名字则没改变(OpenSSL的changelog里并没有提到文件名变化的问题,参见: http://www.--escaped_anchor:50fe2dfc15a50670285e5a19657fe3b0--.org/news/changelog.html ) 而很多依赖openssl的程序里,在加载OpenSSL的dll时,使用了固定的文件名字.只加载libssl32.dll或者ssleay32.dll, 因此在找不到文件的时候不会尝试另外一个文件名,就直接提示出错信息. 解决的办法也很简单,就是根据程序需要调用的dll名字,将libssl32.dll修改成ssleay32.dll,或者将ssleay32.dll修改成libssl32.dll.

分享到:
评论

相关推荐

    OpenSSL libeay32.lib libeay32.dll ssleay32.lib ssleay32.dll

    在Windows操作系统环境下,OpenSSL通常提供静态库(libeay32.lib和ssleay32.lib)和动态库(libeay32.dll和ssleay32.dll)。 libeay32.lib 和 ssleay32.lib 是静态链接库文件,它们包含了OpenSSL的所有函数和数据...

    收集的各种版本的libeay32.dll+ssleay32.dll总有一款适合你

    Libeay32.dll和Ssleay32.dll是OpenSSL库的核心组件,它们为应用程序提供了实现SSL/TLS(Transport Layer Security)协议的功能。 Delphi是一款强大的面向对象的编程环境,常用于开发Windows应用程序。在使用Indy...

    最新openssl编译的libeay32.dll和ssleay32.dll(含lib)

    在Windows环境中,通常会使用`libeay32.dll`和`ssleay32.dll`这两个动态链接库文件来支持OpenSSL的功能。 `libeay32.dll`是OpenSSL库的主要实现部分,它包含了加密算法的实现,如RSA、DSA、DH、ECDH、ECDSA等非对称...

    libeay32.dll 、 ssleay32.dll动态链接库

    用户可以通过下载最新的OpenSSL发行版,将`libeay32.dll` 和 `ssleay32.dll` 放入系统目录(如`C:\Windows\System32`)或者应用程序的本地目录来解决这个问题。同时,为了保持系统的安全性,应及时更新这些库以获取...

    Delphi7 libeay32.dll,ssleay32.dll

    标题 "Delphi7 libeay32.dll,ssleay32.dll" 指的是在 Delphi 7 开发环境中使用 Indy SSL 组件时所需的两个关键动态链接库(DLL)文件:libeay32.dll 和 ssleay32.dll。这两个文件是 OpenSSL 库的组成部分,OpenSSL ...

    MySQL8.0安装时出现ssleay32.dll丢失的错误

    在安装MySQL 8.0的过程中,用户可能会遇到一个常见的错误提示:“ssleay32.dll丢失”。这个错误通常意味着系统缺少必要的动态链接库文件,从而导致MySQL安装程序无法正常运行。ssleay32.dll是OpenSSL库的一部分,...

    libeay32.dll+ssleay32.dll版本汇总-2000年-2013年

    libeay32.dll和ssleay32.dll是OpenSSL库中的两个关键动态链接库文件,它们在Windows操作系统上提供了SSL/TLS功能。本文将深入探讨这两个文件的历史版本、作用以及与Indy库的关联。 libeay32.dll是OpenSSL库的一部分...

    libeay32.dll和ssleay32.dll.zip

    这两个DLL文件与OpenSSL库紧密相关,OpenSSL是一个开源项目,提供了强大的加密和安全套接层(SSL/TLS)协议支持。 `libeay32.dll`是OpenSSL库的核心组成部分,它包含了用于执行加密算法、哈希函数和公钥基础设施...

    ssleay32.dll、libeay32.dll windows64位动态库

    在本例中,我们关注的是`ssleay32.dll`和`libeay32.dll`这两个64位Windows动态库,它们在Delphi Indy框架中扮演着关键角色,尤其是当涉及到`IDHTTP`组件访问HTTPS协议时。 **1. Indy框架:** Indy(Internet Direct...

    libeay32.dll + ssleay32.dll 64位

    标题中的"libeay32.dll + ssleay32.dll 64位"涉及到的是两个重要的动态链接库(Dynamic Link Library,DLL)文件在64位操作系统中的应用。libeay32.dll和ssleay32.dll是OpenSSL库的一部分,用于提供加密和安全套接层...

    openssl 静态 链接库 libeay32.lib ssleay32.lib 64位

    总的来说,OpenSSL的静态链接库libeay32.lib和ssleay32.lib为64位Windows环境提供了方便的加密和安全通信功能,使开发者能够在不依赖额外DLL的情况下构建应用程序。正确地配置和使用这些库是确保程序安全性和兼容性...

    libeay32.dll,ssleay32.dll

    标题中的"libeay32.dll,ssleay32.dll"是指OpenSSL库中的两个关键动态链接库文件。在Windows系统中,DLL(Dynamic Link Library)文件是程序运行所必需的部分,它们包含了可被多个程序共享的代码和数据。 libeay32....

    idhttp delphi xe10.3 需要的libeay32.dll 和 ssleay32.dll

    为了在Delphi程序中使用这些库,你需要将"libeay32.dll"和"ssleay32.dll"放置在可执行文件的同一目录下,或者在系统路径中,确保程序运行时能够找到它们。如果缺少这些文件,IDHTTP组件可能无法正确地处理HTTPS请求...

    libeay32.dll , ssleay32.dll

    如果缺少或版本不匹配,可能会导致应用程序启动失败或者出现安全问题。 在压缩包文件名称列表中,我们看到这两个文件已经以单独的形式提供。这通常发生在需要手动替换或更新旧版本的OpenSSL库,或者在没有自动安装...

    访问https必须的libeay32.dll和ssleay32.dll动态链接库

    需要注意的是,这些库分为32位和64位版本,因此选择与您的操作系统和QT编译版本相匹配的库非常重要,否则可能会遇到“找不到入口点”或“无法启动此程序”等错误。 在您提供的压缩包文件"Openssl动态库"中,应该...

    indy9 ssl使用的两个动态库 libeay32.dll,ssleay32.dll

    总之,libeay32.dll和ssleay32.dll是OpenSSL在Windows环境下实现SSL/TLS功能的关键组件,对于使用Indy9进行加密通信的Delphi应用来说必不可少。正确选择和配置这些库是保证程序安全性和稳定性的关键步骤。

    libeay32.dll + ssleay32.dll 32位

    2. **手动替换DLL文件**:从可信赖的源获取32位版本的`libeay32.dll`和`ssleay32.dll`,将其复制到系统目录(通常是`C:\Windows\System32`)或应用程序的安装目录。 3. **修复注册表**:使用注册表编辑器修复或重新...

    delphi,xe,各种版本集合libeay32.dll+ssleay32.dll.rar

    这个问题的解决方案在于找到并正确安装libeay32.dll和ssleay32.dll这两个动态链接库文件。这两个文件是OpenSSL库的一部分,OpenSSL是一个开源项目,提供了加密和安全通信所需的工具和库,包括SSL(Secure Sockets ...

    安装mysql 8.0 64位时,缺少的ssleay32.dll

    在安装MySQL 8.0 64位版本的过程中,可能会遇到一个常见的问题,即系统提示缺少`ssleay32.dll`文件。这个问题通常出现在Windows操作系统上,因为MySQL需要这个动态链接库(DLL)文件来支持其SSL(Secure Sockets ...

    ssleay32.dll

    错误地放置这些文件可能会导致依赖于ssleay32.dll的程序无法正常工作或启动。 **系统文件的重要性**: 作为系统文件,ssleay32.dll对于确保某些软件和服务的安全性和功能至关重要。如果这个文件丢失或损坏,可能会...

Global site tag (gtag.js) - Google Analytics