Chinaunix

标题: 打开、关闭其他程序,并能扑捉到其他程序中的按钮、编辑框 [打印本页]

作者: lichuanjun    时间: 2008-03-31 17:12
标题: 打开、关闭其他程序,并能扑捉到其他程序中的按钮、编辑框
      打开、关闭其他程序,并能扑捉到其他程序中的按钮、编辑框
      假设该程序窗体名称为“TL-WN321G/WN321G+客户端应用程序”

有关代码如下:
void CCOpen_CloseDlg::OnOpen()
{
HWND hwnd;

hwnd=::FindWindow("#32770","TL-WN321G/WN321G+客户端应
用程序");
if (!hwnd)
{
  ShellExecute(hwnd,_T("open"),_T("TL-WN321G_WN321G+客

户端应用程序"),NULL,g_Path,SW_SHOWNORMAL);
}
else
{
  MessageBox("已经启动!");  
}
}

void CCOpen_CloseDlg::OnClose()
{
HWND hwnd;
hwnd=::FindWindow("#32770","TL-WN321G/WN321G+客户端应

用程序");

if (!hwnd)  
  MessageBox("[TL-WN321G_WN321G+客户端应用程序] 尚未启

动!","错误!");
else
{
  ::SendMessage(hwnd,WM_CLOSE,0,0);
}
}


//下面函数是扑捉到其他程序中的按钮事件
void CCOpen_CloseDlg::OnReflash()
{
// TODO: Add your control notification handler code

here
HWND  hwnd;
hwnd=::FindWindow("#32770","TL-WN321G/WN321G+客户端应

用程序");
hwnd=FindWindowEx(hwnd,0,"#32770",0);
//hwnd=FindWindowEx(hwnd,0,"SysListView32",0);

if(hwnd )//如果有那样的一个窗口打开
{
  HWND

hwndButton=::FindWindowEx(hwnd,NULL,_T("Button"),_T("刷
新"));
  if (hwndButton)
  {
   

//::SendMessage(handMain,WM_COMMAND,1,(long)hwndButton)
;//模拟向button击键--重要!!
   //上面语句有时并不能实现模拟向button击键,用下面两行

语句
   int nButtonID=::GetDlgCtrlID(hwndButton);//由 Button

的句柄得到其ID
   ::SendMessage(hwnd,WM_COMMAND,nButtonID,0);//模拟向

button击键
   

   /*char sz[255];
   strcpy(sz,"StevenMzq");
   ::SendMessage(hwnd2,WM_SETTEXT,255,(long)sz);//将

Button控件的标题改为字符串 StevenMzq
   ::SendMessage(hwnd2,WM_GETTEXT,255,(long)sz);//将

Button控件的标题存入字符串 sz
   */
  }
}
}


//下面函数是扑捉到其他程序中的编辑框事件
void CCOpen_CloseDlg::OnGet()
{
// TODO: Add your control notification handler code

here
HWND  hwnd;
hwnd=::FindWindow("#32770","TL-WN321G/WN321G+客户端应

用程序");
hwnd=FindWindowEx(hwnd,0,"#32770",0);

if(hwnd )//如果有那样的一个窗口打开
{
  HWND

hwndEdit=::FindWindowEx(hwnd,NULL,_T("Edit"),NULL);
  if (hwndEdit)
  {
   char sz[255];
   strcpy(sz,"");
   //strcpy(sz,"StevenMzq");
   //::SendMessage(hwnd,WM_SETTEXT,255,(long)sz);  //向

Edit控件中加入字符串 StevenMzq
   ::SendMessage(hwndEdit,WM_GETTEXT,255,(long)sz);  //

将Edit控件中的内容存入字符串 sz
   MessageBox(sz);
  }
}
}

COpen_Close.rar

1.87 MB, 下载次数: 57

源程序代码


作者: 透明人22    时间: 2008-03-31 18:30
什么意思啊 不明白
作者: cxt442    时间: 2008-07-26 16:24
记得有个工具可以




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2