我到处寻找答案,希望这是因为它没有被回答而不是我的搜索条款缺乏细节。我知道如何使用句柄,我只是问一般问题。
我使用MFC制作的每个程序都有窗口句柄#32770,但所有其他窗口(如编辑框等)都有动态句柄,因此每次打开程序时它的句柄都不同。主程序如何处理它,并且可以为任何窗口提供静态名称,以便不再需要enumwindows或winspy ++ /类似工具。
答案 0 :(得分:1)
窗口句柄始终是动态的。您可以通过在创建时保存其值或使用特殊的win api函数来管理它们,对于MFC,您可以使用CWnd
类或者从它派生的类。如果要按名称/类查找应用程序窗口的外部内容,可以使用FindWindow
。在对话框中,您可以使用GetDlgItem
使用id
查找控件的窗口。