我的问题存在以下代码,它在Visual Studio之外编译并运行良好;
#include "SDL.h"
#include <stdio.h>
int main(int argc, char* argv[]) {
if(SDL_Init(SDL_INIT_VIDEO) != 0)
printf("%s", SDL_GetError());
SDL_Window* window = SDL_CreateWindow("Test", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, SDL_WINDOW_SHOWN);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
这个问题来自一个更大的程序,但与这个简单的例子完全相同。程序运行正常,直到声明window
,程序停止响应窗口并崩溃。我之前的所有SDL项目都不能在Visual Studio中运行,但在IDE之外仍可正常运行。
我刚刚重新安装并重置了Visual Studio 2015 Update 2上的所有用户设置。我使用的是SDL 2.0.4的最新库文件,由我自己编译。我正在构建Debug x86的配置。
编辑:我在VS中调试器的灵敏度,我在创建窗口时遇到了这个异常,
Execption thrown at 0x101EB0B9 (swwxijqt.dll) in SDL_Text.exe: 0xC0000096:
Privileged instruction.
答案 0 :(得分:0)
我不知道发生了什么,或者如何修复它,但我做了一件事,保证解决你无法控制的问题。重新安装Windows修复了我的问题。这个DLL肯定是坏事,没有办法解决它。