简体   繁体   English

应用程序错误 - 调试exe不会运行

[英]Application error - debug exe wont run

I've recently downloaded Assimp and I've run into some troubles. 我最近下载了Assimp ,但我遇到了一些麻烦。

I've linked the libraries and I can get the program to compile and it runs fine in Release mode ; 我已经链接了库,我可以让程序编译,它在Release mode运行良好; however, the Debug .exe hits me with this error: 但是, Debug .exe遇到了这个错误:

The application was unable to start correctly (0xc0150002). 应用程序无法正确启动(0xc0150002)。 Click OK to close the application. 单击“确定”关闭应用程序。

错误

Some more details: 更多细节:

  • I'm using VS2010 with Target Machine set to x86 . 我正在使用VS2010,目标机器设置为x86

  • I am using the 32bit debug dll ( Assimp32d.dll ) that was provided, and I've tried setting runtime libraries to /MT , /MTd , /MD , and /MDd with no luck. 我正在使用提供的32位调试dll( Assimp32d.dll ),我尝试将运行时库设置为/MT/MTd/MD/MDd ,但没有运气。

I read from other similar threads that I should run Dependency Walker on the .exe , but I'm not sure what the output means. 我从其他类似的线程中读到我应该在.exe上运行Dependency Walker ,但是我不确定输出是什么意思。 I'll paste it here if this helps you guys. 如果这有助于你们,我会把它贴在这里。

Error: The Side-by-Side configuration information for "c:\\users\\-----\\documents\\visual studio 2010\\projects\\AssimpTest\\debug\\ASSIMP32D.DLL" contains errors. 错误:“c:\\ users \\ ----- \\ documents \\ visual studio 2010 \\ projects \\ AssimpTest \\ debug \\ ASSIMP32D.DLL”的Side-by-Side配置信息包含错误。 The application has failed to start because its side-by-side configuration is incorrect. 应用程序无法启动,因为它的并排配置不正确。 Please see the application event log or use the command-line sxstrace.exe tool for more detail (14001). 请参阅应用程序事件日志或使用命令行sxstrace.exe工具获取更多详细信息(14001)。 Error: At least one required implicit or forwarded dependency was not found. 错误:找不到至少一个必需的隐式或转发依赖项。 Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module. 错误:由于隐式依赖模块中缺少导出功能,至少有一个模块具有未解析的导入。 Error: Modules with different CPU types were found. 错误:找到了具有不同CPU类型的模块。

Rather than rebuilding the libraries, I downloaded a different set of libraries (it was the SDK installer) and the debug dll's from that are working perfectly. 我没有重建库,而是下载了一组不同的库(它是SDK安装程序),而且调试dll的工作正常。

Just in case anyone has the same problem with the same software, this was the exact name of the installer that worked for me: assimp-sdk-3.0-setup.exe 万一有人对同一软件有同样的问题,这就是为我工作的安装程序的确切名称:assimp-sdk-3.0-setup.exe

I ran into the same problem when trying to run a 64-bit project in Debug mode when using Assimp 3.0. 我在使用Assimp 3.0时尝试在调试模式下运行64位项目时遇到了同样的问题。

What I did was go to assimp/workspaces/vc9, open assimp.sln in Visual Studio 10, convert the project, then rebuild the 32 and 64-bit dll. 我做的是去assimp / workspaces / vc9,在Visual Studio 10中打开assimp.sln,转换项目,然后重建32位和64位dll。 Mind you, you've got to install boost for that as well, and edit the project properties so it points to the boost directory for includes. 请注意,您还必须为此安装boost,并编辑项目属性,使其指向包含的boost目录。

There's probably a way to do it using CMake as well, but I found the whole process too cumbersome to bother with in the first place. 可能有一种方法可以使用CMake来完成它,但我发现整个过程太麻烦了,首先要打扰它。

My solution was just to link the debug build to the release .dll files. 我的解决方案只是将调试版本链接到发行版.dll文件。 No more issues, and I wasn't that interested in debugging the Assimp library anyway! 没有更多的问题,我对调试Assimp库并不感兴趣!

I faced the same issue, later on I downloaded the "assimp-sdk-3.0-setup.exe" file & installed it as a standard windows application. 我遇到了同样的问题,后来我下载了“assimp-sdk-3.0-setup.exe”文件并将其安装为标准的Windows应用程序。

I pointed Visual Studio Solution Include & Lib directories to respective folders from newly installed location, copied DLL to my application location. 我将Visual Studio Solution Include&Lib目录指向新安装位置的相应文件夹,将DLL复制到我的应用程序位置。 The problem was resolved. 问题解决了。 Hope this helps someone. 希望这有助于某人。

Cheers. 干杯。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM