Я вызвал какое-то диалоговое окно в delphi. Я пытаюсь найти ссылку на него, но сталкиваюсь с проблемой. Эти элементы управления не являются VCL, поэтому я не могу использовать FindWindow (дескриптор): TWinControl
Есть ли метод, который возвращает правильное управление окном?
Есть ли какой-нибудь шанс, который я смог бы собрать из такой информации диалогового окна, как:
* количество элементов управления в диалоговом окне * имена, текст, имена классов элементов управления в диалоговом окне
TWinControlили вообще любой экземпляр VCL из этого дескриптора окна. Вы можете вызватьEnumChildWindowsдля перечисления дочерних элементов диалогового окна верхнего уровня. А затем вы можете запросить у них имя класса и так далее. Основные API Win32, которые вам нужны, - этоGetClassNameиGetWindowText. - person David Heffernan   schedule 09.03.2012@EnumChildProc, потому что Windows.pas определяет enum proc какPointerбез типов! Я лично определил бы свой собственныйimport, в котором была бы типизированная процедура обратного вызова, чтобы убедиться, что я все правильно понял. - person David Heffernan   schedule 09.03.2012