Я везде искал ответ, и, надеюсь, это потому, что на него не был дан ответ, а в моих терминах поиска не хватает деталей. Я знаю, как получить и работать с ручками, я просто задаю общий вопрос.
У каждой программы, которую я сделал с использованием MFC, есть дескриптор окна # 32770, но все другие окна, такие как поля редактирования, и все они имеют динамические дескрипторы, поэтому каждый раз, когда вы открываете программу, ее дескриптор отличается. Каким образом основная программа получает свой дескриптор, и можно ли дать любому окну статическое имя, чтобы инструменты enumwindows или winspy ++ / подобные неоднократно не требовались.
Оконные ручки всегда динамичны. Вы управляете ими, сохраняя их значения в момент создания или используя специальные функции win api, в случае использования MFC CWnd
класс или, скорее, классы, производные от него. Ты можешь использовать FindWindow
, если вы хотите найти внешнее окно вашего приложения по имени / классу. В ваших диалогах вы можете использовать GetDlgItem
чтобы найти окно вашего контроля, используя его id
,
Других решений пока нет …