【问题标题】:C# project crash when using C++ referenced project: "System.IO.FileNotFoundException"使用 C++ 引用项目时 C# 项目崩溃:“System.IO.FileNotFoundException”
【发布时间】:2016-02-18 11:36:52
【问题描述】:

当我在 Windows Phone 8.1 应用程序(winrt,无 silverlight)上使用 C++ 子项目中的类时,我正在检索以下消息:

(System.IO.FileNotFoundException) "指定的模块不能被 成立。 (来自 HRESULT 的异常:0x8007007E)”

我之前在为 W8.1(桌面、x86 和 ARM)开发相同的应用程序时遇到此错误。我用 procmon.exe(进程监视器)解决了这个问题,它记录了任何搜索到的库及其结果(找到/未找到)。

使用 procmon.exe 工具,我找到了未找到的库(curl、websockets、ogg、sqlite3),并将其添加到主项目根目录。这解决了桌面问题。

现在我正在将开发的应用程序(Windows 8.1 桌面)移植到 WindowsPhone 8.1 winrt(无 silverlight)。

我遇到了同样的问题,我添加了与桌面项目相同的库(curl、websockets、ogg、sqlite3),但它仍然抛出相同的异常(加载了库,因为如果我添加 x86版本,然后,在 ARM 构建上,会抛出“BadImageException”)。

编辑 1:

让我给你一个项目结构的细目: - AppCS:C# 启动项目。针对 Windows Phone 8.1(winrt,无 silverlight)。 引用 AppCS & 具有以下 dll 作为内容:

ogg: 
    libogg.dll
    libvorbis.dll
    libvorbisfile.dll

websockets:
    libwebsockets.dll

curl:
    libcurl.dll
    libeay32.dll
    ssleay32.dll

sqlite3:
    sqlite3.dll
  • AppCPP:C++ dll 库。针对 Windows Phone 8.1(v120_wp81 工具集)。 这是游戏的核心。参考 libcocos

  • libcocos:dll 库; Windows Phone 8.1 (v120_wp81) 和 Windows 8.1 之间的共享项目。 这是游戏引擎,我假设正在使用 dll(来自 AppCS)。

任何建议的解决方案/工具来解决它?

【问题讨论】:

    标签: c# c++ .net windows-runtime windows-phone-8.1


    【解决方案1】:

    终于可以解决这个问题了。正如预期的那样,我没有附加正确的dll。 似乎没有一种很酷/简单的方法来检测它,因此,您应该在一个大部分为空的测试项目中识别它:

    https://social.msdn.microsoft.com/Forums/windowsapps/en-US/968eecee-a1f8-456f-886d-5600c8968fb2/wp81-c-project-crash-when-using-c-project-systemiofilenotfoundexception?forum=wpdevelop#968eecee-a1f8-456f-886d-5600c8968fb2

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-17
      • 2021-10-24
      相关资源
      最近更新 更多