【问题标题】:Linking Existing C++ dll with Windows Phone Component Runtime将现有 C++ dll 与 Windows Phone 组件运行时链接
【发布时间】:2013-08-27 01:26:21
【问题描述】:

我正在尝试将针对 x86 编译的 C++ dll 与 Windows Phone 项目链接。我遵循了以下提示:

1) http://www.be-init.nl/getmedia/1318adfa-cd4d-4390-a30d-817fd97e37da/Using-native-code-in-your-Windows-Phone-8-Applications-Maarten-Struys.pdf.aspx?ext=.pdf

2) http://www.silverlightshow.net/items/Windows-Phone-8-Native-Code-Support.aspx

3)http://code.msdn.microsoft.com/wpapps/Windows-Runtime-Component-fb644b34

我的问题是我是否可以在 Windows Phone 组件运行时重新使用 x86 的本机 dll?如果没有,如何将现有的原生 C++ dll 移植到 Windows Phone?

例如,在示例项目中 (http://www.jarredcapellman.com/2012/11/3/how-to-get-c-winrt-in-a-windows-phone-8-application) 我尝试为 windows x86 添加 opencv dll 并尝试调用 opencv 函数 (http://docs.opencv.org/doc/tutorials/introduction/windows_install/windows_install.html)。

它编译得很好,但是当我运行应用程序时,它崩溃并显示错误消息 Module not found exception。

The specified module could not be found. (Exception from HRESULT: 0x8007007E)

【问题讨论】:

  • 我不确定您是否可以在 Windows Phone 项目中使用“普通”DLL,但在更基本的层面上,该项目的其余部分是为 x86-64 构建的吗?
  • 您肯定必须对 x86 斜线 x64 下定决心。最好考虑为 ARM 内核添加斜线。破折号不是斜线。

标签: c++ windows-phone-8 native


【解决方案1】:

Windows Phone 采用 ARM 架构,不兼容 x86/64 PC。您只能通过包含来共享源代码。

此处声明了构建 Windows Phone 组件运行时的步骤:http://code.msdn.microsoft.com/wpapps/Windows-Runtime-Component-fb644b34

【讨论】:

    猜你喜欢
    • 2013-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-31
    • 2012-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多