C ++ / GLFW / IMGUI CHASS в DLL: утверждение BD-> prevwndproc! = NullptrC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C ++ / GLFW / IMGUI CHASS в DLL: утверждение BD-> prevwndproc! = Nullptr

Сообщение Anonymous »

Я работаю над пользовательским двигателем C ++, используя GLFW и рад OpenGL. Мой двигатель составлен как DLL и используется в исполняемом редакторе/игре. До сих пор все работает нормально: я могу создать окно и рендеринг в DLL. Когда я создаю экземпляры окна и инициализую IMGUI непосредственно в моем редакторе.Assertion failed: bd->PrevWndProc != nullptr
File: D:\DEV ClutterEditor\ThirdParty\ImGui\backends\imgui_impl_glfw.cpp
Line: 740
< /code>
Вот упрощенная версия моего кода инициализации в DLL: < /p>
void EditorApplication::Init(std::vector pLevels, const std::string& configFile)
{
IMGUI_CHECKVERSION();
ImGui::CreateContext();
ImGuiIO& io = ImGui::GetIO(); (void)io;
ImGui::StyleColorsDark();

GLFWwindow* window = clt::Window::Get().GetGLFWWindow();
IM_ASSERT(window != nullptr); // I’ve verified that GetGLFWWindow() correctly returns the window

ImGui_ImplGlfw_InitForOpenGL(window, true);
ImGui_ImplOpenGL3_Init("#version 460");

Run();
}

< /code>
Я подтвердил, что getglfwwindow () правильно возвращает указатель окна, поэтому авария не вызвана нулевым указателем. Я не уверен, что случилось с этой настройкой DLL. Может ли это быть связано с DLL против статического связывания, или я что -то не хватает в обработке окон?

Подробнее здесь: https://stackoverflow.com/questions/797 ... oc-nullptr
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»