以下三次测试分别用三种方式获取其他应用程序窗体上的内容.
具体是本人工作中遇到一个问题,即在wince手持终端系统上,获取其他应用程序界面上的窗体里的内容,由于我对wince不是很熟,所以先在Win7下想试试可行性,所以有了第一种方式,
第一种方式
//第一种方式主要使用FindWindow函数获取主窗体句柄,再用FindWindowEx函数获取子窗体句柄,再通过SendMessage函数获取子窗体的内容
//第一种方式在VS2010MFC下用基本对话框调试通过
void CGetEditDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
HWND hwnd = 0, hEdit = 0;
char temp[256];
//wince中支持FindWindow函数,
hwnd = (HWND)::FindWindow(_T("#32770"), _T("TestEdit"));//通过对话框句柄和窗体名获取窗体句柄
if(hwnd == 0)
return;
//
//FindWindowEx函数在wince中不支持,详见百度百科
hEdit = (HWND)::FindWindowEx(hwnd, 0, _T("Edit"), NULL );//通过父窗体句柄和编辑框类名获取第一个编辑框句柄
if(hEdit == 0)
return;
//wince中支持SendMessage函数,
int nValue = ::SendMessage(