尽管控制台显示没有错误,但应用程序错误?

Posted

技术标签:

【中文标题】尽管控制台显示没有错误,但应用程序错误?【英文标题】:Application error despite console displaying no errors? 【发布时间】:2019-10-01 03:15:59 【问题描述】:

我一直在看this tutorial,但遇到了一个错误。出于某种原因,即使我修复了未解决的外部符号错误,应用程序错误仍然可用。 https://imgur.com/a/ppngHxL我不知道是不是我的电脑的原因,因为它说它是64位处理系统,但似乎没有任何效果。

我尝试使用tutorial 提取 sdl2.dll 文件,然后将其复制粘贴到 windows32 文件中,但仍然无法正常工作,并且属性面板在我的计算机上没有兼容性选项卡.我不确定下一步该尝试什么。这是代码

 #include "SDL.h"
#include <stdio.h>
int main(int argc, char *argv[]) 

SDL_Init(SDL_INIT_EVERYTHING);
    SDL_Window *window = SDL_CreateWindow("title", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 600, 400, SDL_WINDOW_SHOWN );
    SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, 0);

    SDL_SetRenderDrawColor(renderer, 0, 255, 0, 255);

    SDL_RenderClear(renderer);

    SDL_RenderPresent(renderer);

    SDL_Delay(3000);


    return 0;

【问题讨论】:

即使您的计算机是 64 位的,您仍然可以构建和运行链接到 32 位 DLL 的 32 位应用程序。 (平台x86)您可以为您的编译器提供目标平台。您使用的是什么编译器/IDE?你得到了什么错误? (抱歉,我这边的图片被屏蔽了 - 公司安全偏执狂。) 错误代码 0xc000007b 表示 INVALID_IMAGE_FORMAT,通常由于系统或应用程序文件丢失或损坏而发生。请确保您尝试通过代码使用的 dll 也使用相同的配置构建,即如果您尝试构建目标为 X64 架构的解决方案,则 dll (sdl2.dll) 也应该是 X64 位。 【参考方案1】:

应用程序无法正常启动(0xc000007b)

根本原因是缺少需要的DLL,而且dll版本错误也是可能的原因,两者的报错是完全一样的。

我注意到以下问题。是否有可能是不同的版本导致了您的问题。但是我测试并没有发现任何东西,它有效。

您是否执行了此步骤?将 SDL2.dll 复制到项目的根目录。这也可能会导致一些问题,虽然编译成功了。

当然,您更可能缺少其他系统文件或 dll。很难猜出哪个文件丢失了。如果是这种情况,很抱歉我没有更好的建议。

【讨论】:

以上是关于尽管控制台显示没有错误,但应用程序错误?的主要内容,如果未能解决你的问题,请参考以下文章

尽管没有错误,页面根本不会显示

尽管没有引发错误,但图像似乎没有上传到 Firebase 存储

控制台中的 BILLING 权限错误,尽管它不在清单中

例外:-尽管删除了扩展的小部件,但没有布置 RenderBox

尽管此 JSON 有数据,但方法返回 JSON“empty:false”

尽管它显示在任务栏上,但 Android Studio 模拟器无法正常工作