Windows Embedded Standard 7 找不到我的 .dll

Windows Embedded Standard 7 won't find my .dll

几周前,我构建了一个原生 C++ .dll,它包装了一个第三方 .dll,以便在几个要部署到 WES7 中的应用程序中与 C# P/Invoke 一起使用。我一直在使用 Windows 10 作为开发箱,一切都按预期工作。这周我终于拿到了带有嵌入式 Windows 的盒子,但事情不再那么顺利了……我尝试部署三个不同的 C# 应用程序,它们使用我与第三方一起构建的 .dll一个,但它们都因 DllNotFoundException 而失败。显然,对于每个项目,这两个 .dll 文件都与我的可执行文件位于同一文件夹中,但我一直收到 DllNotFoundException。我的本机 .dll 针对 Win32 平台,嵌入的 windows 是一个 32 位系统,而我所有的 C# 应用程序都是针对 x86 架构构建的,所以我已经排除了这一点。我浪费了最后一个小时来弄乱 system32 文件夹,但无济于事,所以我 运行 别无选择。任何建议将不胜感激。

编辑:我刚和一位远程工作的同事谈过,他在尝试 运行 WES7 下的 .dll 时遇到了完全相同的问题。我会在获得更多信息后立即更新此问题。

最后巧巧在目标机器上部署了一个DEBUG版本,没有msvcp100d.dll和msvcr100d.dll。我使用 Dependency Walker 来解决这个问题(显然我很难查看项目属性页面下拉菜单)并在目标中部署了一个发布版本。它终于奏效了,但我有一个不同的问题导致另一个问题...