Я пробовал около года или около того с помощью C++ и решил, что я попробую свою руку на python, поскольку он имеет гораздо более простой синтаксис и увеличит производительность, пока я все еще изучаю (я думаю!). Я пытаюсь перечислить все дочерние окна из родительского окна настольного приложения в Windows.Перечисление дочерних окон в python?
import win32ui
def WindowExists(windowname):
try:
win32ui.FindWindow(None, windowname)
except win32ui.error:
return False
else:
return True
appFind = "Test Application"
if WindowExists(appFind):
print ("Program is running")
hwnd = win32ui.FindWindow(None, appFind)
else:
print ("Program is not running")
До сих пор я отождествляю приложение без проблем, но мне интересно, если мое назначение HWND работает так, как я думаю, что он будет делать в с средой ++, так что я смог бы передать мое назначение HWND в EnumChildWindows , Я не совсем уверен, как я могу получить отсюда детей.
Еще один вопрос, который у меня был, а не использование только названия приложения, как я могу использовать дескриптор? если, например, дескриптор был чем-то вроде 00130903 тестового приложения. Я помню несколько месяцев, когда я перепутал с чем-то вроде этого на C++, и я думаю, вы можете использовать x для замены первого набора нулей (или чего-то подобного) на дескрипторе, но я, честно говоря, не могу вспомнить многое из этого, так что, надеюсь, вы, ребята, можете Помогите!
Edit -
TypeError: Объект не является объектом PyHANDLE.
Я думаю, что мое предположение прямо здесь, что я неправильно назначил правильный дескриптор с именем hwnd, это ошибка, которую я получаю, когда пытаюсь использовать enumchldwindows или win32con.WM_GETTEXT, любой пример правильной установки дескриптора по заголовку и по ручке было бы действительно оценено!