要实现在程序里面控制其他程序的BUTTON状态,如果Button上是字符的话可以利用
CWnd *wnd=FindWindow(NULL,"程序1");
CWnd *cWnd1=CWnd::FromHandle(FindWindowEx(wnd->m_hWnd,0,"Button","按钮1"));
cWnd1->EnableWindow(0);//使该按钮失效如果Button上是图像的话,要怎么实现上述控制呀
CWnd *wnd=FindWindow(NULL,"程序1");
CWnd *cWnd1=CWnd::FromHandle(FindWindowEx(wnd->m_hWnd,0,"Button","按钮1"));
cWnd1->EnableWindow(0);//使该按钮失效如果Button上是图像的话,要怎么实现上述控制呀
解决方案 »
- 使用CSocket类,客户端如何接收来自服务端的数据?
- 请问,richEdit如何知道每行的字体的高度,以及整个显示区域的高度呢?
- 坐标系的问题?急等ing...
- 谁能帮我编一个屏蔽ctrl+alt+del的功能的程序,谢谢!
- 关于调试的问题!Build(F7)时没任何问题,可Execute(Ctrl+F5)时就不行了
- 为什么我安装的vc6.0无法显示classview?为什么?我重启了n次也不行?
- 怎样判断一个窗口移动了位置?
- 请问在Onpaint中如何将滚动条关联起来?
- 毕设急需PUDN账号使用
- 100分求可在vc2005用的pkcs标准开发包
- 如何制作一个调用dll的activx控件
- lnk2001链接错误,各位大侠帮帮忙
FindWindowEx来查找类名为"Button"的子窗口
cWnd1->EnableWindow(0);//使该按钮失效
得到了句柄却不知道
EnableWindow(
hWnd, // handle to window
bEnable // enable or disable input
);
一个是mfc,一个是sdk,前面只是对后面的封装,后面才是最根本的东西我不明白你要实现什么功能,无非就是查找窗口而已
FindWindowEx结合EnumChildWindows,那一个有句柄的窗口能逃掉?
不用FINDWINDOW用枚举所有窗口
图象窗口是没有标题的,而且其本身的详细信息可以使用getwindowlong得到,可以确定的说,任何时候在系统里面都不会出现完全一样的控件,区别在那里需要你自己动脑筋去找.
关于守护线程,其实是没有必要的,因为程序本身就可以自己应付外界的"骚扰",究竟能不能被别的程序入侵,只有相对没有绝对.技术是永远向前发展的#include <windows.h>
#include <STDIO.H>
BOOL myEnumWindow(HWND hwnd);
int main()
{
myEnumWindow(NULL);
return 0;
}BOOL myEnumWindow(HWND inHwnd)
{
char szText[256]; HWND hwndAfter = NULL;
while(hwndAfter = ::FindWindowEx(inHwnd,hwndAfter,NULL,NULL))
{
memset(szText,0,256);
::SendMessage(hwndAfter,WM_GETTEXT,(WPARAM)256,(LPARAM)szText);
printf("%s\t",szText);
myEnumWindow(hwndAfter);
}
return 1;
}
你的意思是枚举所有子窗口然后加以判断对吧
枚举过程消耗时间空间代价先不考虑,子窗口的动态调用也会相应的删除或者添加控件出来,这个时候需要如何判断需要调用的控件hwnd是哪一个