我需要在另一个进程中看到单击的控件的组件类型,这意味着被编程的类的名称。我需要这种类型,以便对点击的控件作出反应,然后执行一些自动化任务。 现在我正在做以下事情: 1.我从Win32的FindWindow()找到进程的主窗口句柄。 2.然后,我从Win32中调用EnumChildWindows(),并获取主窗口句柄的所有子项的窗口句柄。 3.现在变得棘手。当我调用GetClassName()时,它会返回WindowsForms10.STATIC.app [...],因为我试图读取的控件是自定义的。从窗口句柄中获取自定义.NET类的组件类型
如何从EnumChildWindows()中使用窗口句柄获取单击的控件的类型?我正在努力做甚么? 我一直在研究使用从Win32的SendMessage()到进程,但似乎没有系统定义的消息可以帮助。
非常感谢您的快速回答。我一直在Win32 API中阅读很多,但没有运气。 :(我需要查看顶级类,以便我可以预测用户想要做什么,我不需要进一步与控件交互,我已经编写了一个Hook来读取应用程序中鼠标的位置。然后,我需要做的是读取哪个组件类型被单击,由于属性设置不正确,Casting到AutomationElement也没有帮助,我看到ManagedSpyLib可以读取组件类型,但它尚未被编译。 NET 4.0所以我需要自己编程 – prettyCode 2010-10-11 10:42:14
如果你找到一个有用的答案,你可以点击向上箭头,如果它回答你的问题,请点击箭头下面的绿色选中标记。 – msteiger 2010-10-11 11:57:11