В чем разница между RealGetWindowClass и GetClassName? (или что такое «тип окна» или «имя класса окна»?) - PullRequest
3 голосов
/ 04 февраля 2009

В MSDN есть различие в описании, однако я не понимаю, что означает текст.

Функция GetClassName извлекает имя класса, к которому относится указанное окно. Функция RealGetWindowClass извлекает строку, которая указывает тип окна.

В качестве примера использования windows calc.exe
Из GetClassName вы получаете "SciCalc"
Из RealGetWindowClass вы получаете "# 32770"

Полагаю, я действительно спрашиваю, что такое "тип окна" по сравнению с "именем класса окна"?

1 Ответ

1 голос
/ 04 февраля 2009

См. Следующую статью: http://forums.wincustomize.com/3258 deadlink Обновленная ссылка https://blogs.msdn.microsoft.com/oldnewthing/20101231-00/?p=11863

Резюме:
Реальные ... функции были добавлены для поддержки доступности Windows. Цель RealGetWindowClass - помочь инструментам специальных возможностей определить, с каким окном оно работает, даже если приложение немного замаскировало его в виде суперкласса.

Если вы спрашиваете RealGetWindowClass имя класса окна, он просматривает все суперклассы и возвращает имя базового класса (если базовый класс является одним из стандартных классов диспетчера окон). Например, если ваше приложение перекрывает класс кнопки, вызов GetClassName вернет AwesomeButton, а вызов RealGetWindowClass вернет кнопку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...