【问题标题】:Compile OpenSSL for Windows Phone 8.0为 Windows Phone 8.0 编译 OpenSSL
【发布时间】:2015-05-25 11:12:21
【问题描述】:

我正在尝试使用这个 repo 为 WP 8.0 编译 OpenSSL。 https://github.com/Microsoft/openssl

我是怎么做的:

  1. 在源码根树中执行以下脚本。

    ms\do_vsprojects.bat

  2. 已创建开放式 Visual Studio 解决方案

    vsout\openssl.sln

  3. 运行单元测试应用项目

  4. ms\do_packwinapp.bat

最后我从路径"\openssl\vsout\package\bin\Phone\8.0\Dll\Unicode\Release\arm" 得到了两个dll ssleay32.dlllibeay32.dll。我正在尝试将此 dll 添加到我的 WP8.0 项目中,但出现错误:

"A reference to a higher version or incompatible assembly cannot be added to the project."

我做错了什么?

【问题讨论】:

标签: c# windows-phone-8 dll visual-studio-2013 openssl


【解决方案1】:

这些库已针对 Windows Phone 以外的目标平台进行编译。

在 VS 中查看这些库的构建选项。

【讨论】:

  • 我选择了ARM,我的项目也是ARM平台
【解决方案2】:

您正在尝试将这些 C++ .dll 直接链接到您的 C# 代码(为了验证这一点,我在 VS 中尝试了相同的操作并得到了相同的错误)。这行不通。

您需要做的是在您的 C# 手机解决方案中创建一个 C++ 项目。在VS 2015中,右键solution -> Add New Project -> Visual C++ -> Windows -> Windows 8 -> Windows Phone -> Windows Runtime Component(8.0/8.1/silverlight有多个选项)。选择与您的手机应用相匹配的那个)。

在这个新的基于 c++ 的 Windows Phone 运行时组件项目中,您将能够编写和调用 c++ 代码。 OpenSSL dll 需要链接到这个 c++ 项目。

我刚刚尝试在我的 windows phone 项目中链接 openssl 静态库,它成功了(花了一些时间,但成功了)。

您应该能够在 google 上找到有关如何为 Windows 手机应用程序编写 C++ 代码的更多信息。这可能是一个不错的起点:https://msdn.microsoft.com/en-us/library/windows/apps/hh441569%28v=vs.110%29.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 1970-01-01
    相关资源
    最近更新 更多