Я занят игровым движком DirectX10, и у меня проблема, которая не имеет ничего общего с DirectX :P Проблема в том, что в DLL, которая содержит движок, иногда вызывается диалоговое окно, как в обычном win32. . С той лишь разницей, что вместо HINSTANCE я использую HMODULE, который я получаю при загрузке DLL.
Кажется, все работает нормально, если я пройдусь по своему коду с помощью F10 (Visual C++ 2008), я даже увижу, как он проходит через мою функцию DlgMessageProc и делает все, что должен делать. Единственная странная вещь заключается в том, что диалоговое окно не отображается и что внезапно оно выпрыгивает из цикла сообщений и просто продолжается с остальной частью кода ???
Как ни странно, у меня та же проблема при вызове MessageBox из моей DLL, я не получаю ошибок, все работает нормально, но окно не отображается, и код не останавливается (как обычно с окнами сообщений)
Самое смешное, что у меня есть код из книги, который использует ту же базовую архитектуру, что и я, и если я скомпилирую, все будет нормально?
Итак, мой вопрос, есть ли какая-либо скрытая опция, комментарий прагмы или что-то еще, на что я должен обратить внимание, если я хочу иметь возможность показывать MessageBoxes и диалоги из моей Dll?