为什么.NET没有找到OpenSSL.NET DLL?

Laz*_*zlo 9 .net c# dll dllnotfoundexception dllimport

编辑(整个问题,它太不清楚了)

我想使用OpenSSL.NET

OpenSSL.NET安装说明页面:INSTALL

确保在应用程序的当前工作目录或PATH中有libeay32.dll和ssleay32.dll.DONE
在.NET项目中,添加对ManagedOpenSsl.dll程序集的引用.DONE

我已经把libeay32.dllssleay32.dll两个我bin/Debugbin/Release目录.我也把它们放进去了system32.

这是我的完整代码:

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                OpenSSL.Crypto.RSA rsa = new OpenSSL.Crypto.RSA();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.InnerException.Message);
            }
            Console.Read();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误: 无法加载DLL'libeay32'http://localhostr.com/files/a719c5/Error.gif (无法加载DLL'libeay32')

这是Process Monitor日志(根据要求): alt text http://localhostr.com/files/726a46/ProcMon.gif

我究竟做错了什么?为什么找不到DLL?

fri*_*ied 4

尝试使用最新版本的OpenSSL.NET(0.4.1),它现在应该包含预构建的libeay32.dll和静态链接到CRT的ssleay32.dll二进制文件.或者,您可以自己构建这些库,也可以使用openssl.org中的"官方"构建.