问题描述
程序被卡在glfwInit()
函数中。但是,没有错误消息,并且glfwInit()
不会停止。就像主线程正在休眠或陷入无限循环。这个问题似乎不是特定于项目的,因为我尝试运行的程序在发生相同问题的日子里没有更改过(该程序也可以正常工作)。我正在使用Visual Studio 2019。
int main() {
int width,height;
//Everything until this function will not execute and the program won't stop from its self.
if (!glfwInit()) {
std::cout << "ERROR::GLFW::Could not be initialized!" << std::endl;
}
setUpWindow();
GLFWwindow* window = createWindow(800,800,"OpenGL Advanced");
if (window == nullptr) {
glfwTerminate();
return 2;
}
glfwMakeContextCurrent(window);
setUpListener(window);
bool gladisLoaded = loadGlad();
if (!gladisLoaded) {
glfwTerminate();
return 3;
}
setUpOpenGL();
startRenderLoop(&width,&height,window);
glfwTerminate();
return 1;
}
这是调用堆栈:
ntdll.dll!NtDeviceIoControlFile() UnkNown
KernelBase.dll!DeviceIoControl() UnkNown
kernel32.dll!DeviceIoControlImplementation() UnkNown
hid.dll!00007ff86b631c2b() UnkNown
hid.dll!00007ff86b631a1b() UnkNown
dinput8.dll!00007ff83367492b() UnkNown
dinput8.dll!00007ff833674648() UnkNown
dinput8.dll!00007ff833674401() UnkNown
dinput8.dll!00007ff833671f87() UnkNown
dinput8.dll!00007ff83367424d() UnkNown
dinput8.dll!00007ff833671037() UnkNown
dinput8.dll!00007ff833678f1f() UnkNown
dinput8.dll!00007ff8336790c6() UnkNown
OpenglAdvanced.exe!_glfwInitJoysticksWin32() C
OpenglAdvanced.exe!_glfwPlatformInit() C
OpenglAdvanced.exe!glfwInit() C
OpenglAdvanced.exe!main() Line 48 C++
OpenglAdvanced.exe!invoke_main() Line 79 C++
OpenglAdvanced.exe!__scrt_common_main_seh() Line 288 C++
OpenglAdvanced.exe!__scrt_common_main() Line 331 C++
OpenglAdvanced.exe!mainCRTStartup() Line 17 C++
kernel32.dll!BaseThreadInitThunk() UnkNown
ntdll.dll!RtlUserThreadStart() UnkNown
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)