vc++如何获得其它程序窗口用户自定义控件的句柄?

时间:2022-03-31 19:59:55
如题:vc++如何获得其它程序窗口用户自定义控件的句柄?
用spy++只能得到部分标准控件的句柄,用EnumeChindWindows()等API也只能得到spy++能得到的控件的句柄,如何才能 得到其它程序窗口中用户自定义控件的句柄呢?如果不能得到 句柄,我如何才能对其操作呢?如何才能得到用户自定义控件(如列表框,文本框)的内容呢?

6 个解决方案

#1


试试FindwindowEx可以不

#2


将句柄设为全局的呗

#3


问题补充:我现在是要跑两个程序,程序A在运行,另一个程序B模拟人来操作程序A,而程序B不知道程序A的任何代码信息。所以程序B必须能得到程序A所有控件的句柄,才能给控件发消息,而Findwindow(),FindwindowEX(),EnumeWindows(),EnumeChildWindows()等API都不能得到程序A的用户自定义控件句柄,如何才能在程序B中得到程序A的用户自定义控件句柄呢?

#4


先声明一个自定义控件,并在声明控件的CLASS中加入Wndproc函数,用该函数返回该自定义控件的句柄。

#5


你没必要非得获取程序A的用户自定义控件句柄,
B可以发送一个自定义消息给A, 当A接收到这个消息的时候, A就知道你要干嘛了,这时A可以发送一个“B想发送的消息”给自定义控件就可以了。

#6


发送给自定义控件的消息让A来发送, B只要通过A发送就可以了

#1


试试FindwindowEx可以不

#2


将句柄设为全局的呗

#3


问题补充:我现在是要跑两个程序,程序A在运行,另一个程序B模拟人来操作程序A,而程序B不知道程序A的任何代码信息。所以程序B必须能得到程序A所有控件的句柄,才能给控件发消息,而Findwindow(),FindwindowEX(),EnumeWindows(),EnumeChildWindows()等API都不能得到程序A的用户自定义控件句柄,如何才能在程序B中得到程序A的用户自定义控件句柄呢?

#4


先声明一个自定义控件,并在声明控件的CLASS中加入Wndproc函数,用该函数返回该自定义控件的句柄。

#5


你没必要非得获取程序A的用户自定义控件句柄,
B可以发送一个自定义消息给A, 当A接收到这个消息的时候, A就知道你要干嘛了,这时A可以发送一个“B想发送的消息”给自定义控件就可以了。

#6


发送给自定义控件的消息让A来发送, B只要通过A发送就可以了