接手一个项目,一个exe文件没源码,如何在程序中去模拟去点击exe运行界面上按钮,并把运行结果从界面的文本框中自动复制出来?

解决方案 »

  1.   

    按钮有句柄么?没有的话不好办。获取运行结果,向文本框发送WM_GETTEXT消息可以得到(如果它没有屏蔽这个消息的话)
      

  2.   

    可以定位鼠标到按钮的点上,再发送MouseClick实现单击,要取出内容就要按老之的方法
      

  3.   

    向文本框发送WM_GETTEXT消息 这个什么实现呢?能否有简单的例子看看
      

  4.   

    获取记事本编辑框文本内容的例子:var h1,h2 : THandle;
        s : array[0..255] of char;
    begin
      h1 := FindWindow('Notepad',nil);
      if h1 <> 0 then
       begin
          h2 := FindWindowEx(h1, 0, 'Edit', nil);
          if  h2 <> 0 then
            begin
              SendMessage(h2, WM_GETTEXT, 256, Integer(@s[0]));
              ShowMessage(s);
            end
       end
      else
        ShowMessage('没找到记事本窗体');
    end;
      

  5.   

    多谢,那设置值有没有一个WM_SETTEXT ?? 另外点击按钮的方法不知能否解决