问题描述
我试图学习SDL2和C ++,并且遵循this tutorial进行所有设置,我复制了代码并下载了必要的文件并移动了它们,但是,当我尝试运行代码时,这就是显示在输出中
'1stSDLWindow.exe' (Win32): Loaded 'C:\Users\Alec\source\repos\1stSDLWindow\x64\Debug\1stSDLWindow.exe'. Symbols loaded.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\shell32.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\msvcp_win.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbase.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\win32u.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Windows\System32\gdi32full.dll'.
'1stSDLWindow.exe' (Win32): Loaded 'C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\bin\SDL2.dll'.
'1stSDLWindow.exe' (Win32): Unloaded 'C:\Program Files (x86)\Steam\steamapps\common\Team Fortress 2\bin\SDL2.dll'
The thread 0x7e8 has exited with code -1073741701 (0xc000007b).
The thread 0x32c8 has exited with code -1073741701 (0xc000007b).
The program '[6436] 1stSDLWindow.exe' has exited with code -1073741701 (0xc000007b).
没有屏幕显示绿色,如代码所示,并且弹出错误this
这是代码
#include "SDL.h"
int main(int argc,char* argv[])
{
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Window* window = SDL_CreateWindow("Title",SDL_WINDOWPOS_CENTERED,600,400,SDL_WINDOW_SHOWN);
SDL_Renderer* renderer = SDL_CreateRenderer(window,-1,0);
SDL_SetRenderDrawColor(renderer,255,255);
SDL_RenderClear(renderer);
SDL_RenderPresent(renderer);
SDL_Delay(3000);
return 0;
}
为什么要尝试从我的TF2目录加载SDL2.dll?这是问题所在吗?如何从实际下载的文件夹中加载.dll?
解决方法
TF2的目录位于环境变量中,这是它试图从中加载的目录。我从PATH
中删除了这些目录,并将SDL2.dll文件移到了为我的程序构建exe的地方