Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么Visual Studio试图从Team Fortress 2加载SDL2? 我正在学习SDL2和C++,我在跟踪设置所有的内容,我复制了代码并下载了必要的文件并移动了它们,但是,当我尝试运行代码时,这就是输出中显示的内容。 '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)._C++_Sdl 2 - Fatal编程技术网

为什么Visual Studio试图从Team Fortress 2加载SDL2? 我正在学习SDL2和C++,我在跟踪设置所有的内容,我复制了代码并下载了必要的文件并移动了它们,但是,当我尝试运行代码时,这就是输出中显示的内容。 '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).

为什么Visual Studio试图从Team Fortress 2加载SDL2? 我正在学习SDL2和C++,我在跟踪设置所有的内容,我复制了代码并下载了必要的文件并移动了它们,但是,当我尝试运行代码时,这就是输出中显示的内容。 '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).,c++,sdl-2,C++,Sdl 2,没有屏幕显示代码应该显示的绿色,并且会弹出一个错误 这是密码 #include "SDL.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

没有屏幕显示代码应该显示的绿色,并且会弹出一个错误

这是密码

#include "SDL.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;
}

为什么它试图从我的TF2目录加载SDL2.dll?这是问题的根源吗?如何从实际下载的文件夹中加载.dll?

TF2的目录位于环境变量中,这就是它试图从中加载的位置。我从
路径
中删除了这些目录,并移动了SDL2.dll文件,在该文件中为我的程序生成exe

PATH环境变量是什么样子的?很可能是因为在搜索
路径
环境变量中列出的文件夹时首先找到了SDL2的版本。附议@Jeffrey的评论,看见虽然这确实提出了一个问题,为什么TF2会出现在您的
路径中。这些似乎起到了作用,但我发现其他情况下,其他Steamapps目录中的路径变量的一部分是导致问题的原因吗?这可能会导致问题,因为您的代码可能会使用截然不同的SDL2 DLL版本,并且不同的版本可能与您使用导入库静态链接的版本不兼容。这通常被称为DLL地狱。相关的: