Поиск дескриптора, который сохраняется при перезапуске родителя - PullRequest
0 голосов
/ 01 октября 2009

Мне нужно взаимодействовать с сторонними приложениями, зная дескриптор определенных текстовых полей, но hWnd всегда изменяется при воссоздании этого окна. Есть ли способ, который позволил бы мне идентифицировать окно и неоднократно иметь возможность доступа к этому окну (даже после того, как оно было закрыто, а затем вновь открыто), не заставляя пользователя вручную идентифицировать окно?

Мне нужно, чтобы пользователь мог идентифицировать окно обычным методом щелчка, перетаскивания и отпускания, но должен делать это только один раз, а не каждый раз, когда целевое окно создается заново.

Ответы [ 2 ]

0 голосов
/ 02 октября 2009

Если это диалоговое окно, то все элементы управления будут иметь идентификаторы. Используйте FindWindowEx, чтобы получить дескриптор главного окна, затем GetDlgItem, чтобы получить дескриптор элемента управления с учетом его идентификатора.

0 голосов
/ 01 октября 2009

Используйте GetWindowText / GetWindowInfo, чтобы найти имя окна и имя класса, когда пользователь нажимает на него. Если вы хотите снова найти окно, передайте его в FindWindow.

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