Иногда в моей OpenGL приложения я получаю нарушение прав доступа в следующий вызов API:нарушение прав доступа в wglMakeCurrent
wglMakeCurrent(NULL, NULL);
Приложение имеет только одну единственную нить, и я проверил, что до этого вызова, как DC и HGLRC, которые в настоящее время используются, являются правильными и действительными.
Существует три разных окна с содержимым OpenGL, и все они перерисовываются в сообщениях WM_PAINT, и если требуется обновление из-за взаимодействия с пользователем (например, выбор объекта).
Также это нарушение прав доступа происходит на разных машинах с разными графическими картами, поэтому я не думаю, что это проблема с драйвером.
Что может привести к сбою вызова API? Что я должен исследовать в коде приложения, чтобы узнать, где/почему это происходит? Я действительно потерялся здесь, так как я проверил все, о чем я мог думать. Я надеюсь, что кто-то может дать мне подсказки/идеи о том, что еще нужно проверить.
Возможно проверить возвращаемое значение вызова wglMakeCurrent или GetLastError. – Stringer
Ошибка wglMakeCurrent, поэтому нет возвращаемого значения. – Stefan