Лучший способ сохранить этот указатель для использования в WndProc

Хотя использование SetWindowLongPtr и GetWindowLongPtr для win32 доступа к GWL_USERDATA может показаться c++ хорошей идеей, я настоятельно win32api рекомендую не использовать win32 этот подход.

Именно такой c++ подход использует редактор win32api Zeus, и в последние годы он не windows-programming причинял ничего, кроме боли.

Я c++ думаю, что происходит, когда cxx сторонние сообщения Windows object-oriented-design отправляются на Zeus, для которых win32 также установлено значение wndproc GWL_USERDATA. В частности, одним из приложений wndproc был инструмент Microsoft, который win32api предоставлял альтернативный windows способ ввода азиатских символов object-oriented в любом приложении Windows windows-application (например, своего рода программную win32api клавиатуру).

Проблема в том, что object-oriented Zeus всегда предполагает, что windows данные GWL_USERDATA были установлены win32api им, и пытается использовать cpp данные в качестве этого указателя, что затем windows-programming приводит к сбою.

Если бы мне windows-applications пришлось делать все это снова windows-applications с тем, что я знаю сейчас, я win32api бы выбрал подход поиска в wndproc кэшированном хэше, где дескриптор cpp окна используется в качестве windows-programming ключа.

c++

windows

winapi

oop

wndproc

2022-11-09T13:20:22+00:00
Вопросы с похожей тематикой, как у вопроса:

Лучший способ сохранить этот указатель для использования в WndProc