C# Windows通用——在C++项目中调用C运行时组件时崩溃 解决方案包含两个项目,一个是使用C++的主项目,另一个项目是使用C的运行时组件,在主项目中调用。

C# Windows通用——在C++项目中调用C运行时组件时崩溃 解决方案包含两个项目,一个是使用C++的主项目,另一个项目是使用C的运行时组件,在主项目中调用。,c#,c++,windows-runtime,win-universal-app,windows-10-mobile,C#,C++,Windows Runtime,Win Universal App,Windows 10 Mobile,如果通过VS Express for Windows10在设备上加载,则在Windows 10 Phone上工作正常 但用于上传到Windows应用商店的软件包在手机上运行时崩溃 以下步骤将再现崩溃: 1创建了一个.appxupload包并将其解压以提取其中的.appx包; 2把这个.appx软件包放到手机上; 3.点击.appx文件在手机上安装app; 4运行应用程序-它运行正常,直到实例化C类-应用程序崩溃 我需要做些什么来避免它?或者这是微软的一个缺陷 谢谢。路径呢?在VisualStud

如果通过VS Express for Windows10在设备上加载,则在Windows 10 Phone上工作正常

但用于上传到Windows应用商店的软件包在手机上运行时崩溃

以下步骤将再现崩溃: 1创建了一个.appxupload包并将其解压以提取其中的.appx包; 2把这个.appx软件包放到手机上; 3.点击.appx文件在手机上安装app; 4运行应用程序-它运行正常,直到实例化C类-应用程序崩溃

我需要做些什么来避免它?或者这是微软的一个缺陷


谢谢。

路径呢?在VisualStudio中,组件路径工作正常,但从appx加载组件时,路径设置可能不正确。因此应用程序无法找到必要的组件

尝试在C++和C项目中的项目依赖项中的各种目录和文件路径列出所有组件及其引用。然后验证在手机上运行时,这些引用是否可以在这些路径中找到。

我已经得到了答案

我认为从一开始我就不应该直接在手机上安装.appxupload软件包

我在没有任何更改的情况下将.appxupload包提交到Windows应用商店,然后从应用商店安装该应用程序,该应用程序根本不会崩溃。显然,.appxupload软件包仅用于提交到应用商店-我认为Windows应用商店在提交后会对软件包进行进一步的处理吗


如果您想对应用程序进行测试,请始终在XXX_测试文件夹中安装.appx包,而不是.appxupload。

如果您发布错误,可能有人会帮助您…感谢Gusman的评论,有一个异常导致应用程序崩溃-找不到指定的模块。如果我使用Visual Studio在手机上加载应用程序(无论是调试还是发布都已确定),则不会发生此异常。请发布确切的错误,找不到哪个模块?你所能做的就是复制准确的错误信息并将其添加到你的问题中,如果没有尽可能多的信息,没有人能够帮助你。你提供的信息越多,你就越容易得到帮助。对不起,Gusman,这是我能得到的唯一例外信息。这个异常发生在调用C++运行时我从C++项目创建的组件时。所以我认为这里的模块就是这个C运行时组件。很抱歉,我无法获取更多详细信息,因为当连接到visual studio时,应用程序运行正常,不会发生异常。感谢您的回复,我已经检查了appx包中的引用和内容。似乎所有的参考文献都存在。我还发现,只有在从C++调用C时才会发生崩溃。如果我用C++实现运行时组件而不是C—不崩溃。DLL的版本如何?您的C组件是否具有手机上不存在的依赖项,或者具有不同的版本?否,此C组件当前只有一个空类文件。它不依赖于任何其他组件。顺便说一下,XX_测试文件夹中的appx工作正常,只有.appxupload中的appx崩溃。这很奇怪。。。顺便问一下,你真的需要空的C类组件吗?尝试在您的设备中以发布模式从visual studio运行appx。它的工作方式是否与调试模式相同?很抱歉,我从未开发过windows phone应用程序,尽管目前我正在做一个windows Embedded Compact 7项目。所以我不知道windows phone appx的具体步骤。我只是在考虑在windows环境下运行任何程序时会发生的一般情况…您确实说过,在尝试实例化C组件之前,应用程序运行良好。。。你能运行这个应用程序,然后将VS连接到已经运行的应用程序,并尝试看看C组件启动时到底发生了什么吗?