C# 检测另一应用程序中的按钮启用

C# 检测另一应用程序中的按钮启用,c#,button,external-application,C#,Button,External Application,我有一个应用程序,我想写一个自动测试。自动测试将模拟操作员对应用程序的使用。我无法更改应用程序的源代码,因为它已“冻结”以供审阅 应用程序将显示一个弹出窗口(消息),通知操作员在测量完成后单击按钮。该按钮在消息窗口关闭一段时间后启用 我需要知道如何检测应用程序何时启用此按钮。到目前为止,我的研究表明,应用程序应该广播一条定制消息,以帮助自动化测试;但是我不能修改源代码 此外,应用程序将在单击“测量完成”按钮后启用单选按钮,询问测量是否有效。我也需要检测这个 摘要: 我如何检测按钮何时启动 (控制

我有一个应用程序,我想写一个自动测试。自动测试将模拟操作员对应用程序的使用。我无法更改应用程序的源代码,因为它已“冻结”以供审阅

应用程序将显示一个弹出窗口(消息),通知操作员在测量完成后单击按钮。该按钮在消息窗口关闭一段时间后启用

我需要知道如何检测应用程序何时启用此按钮。到目前为止,我的研究表明,应用程序应该广播一条定制消息,以帮助自动化测试;但是我不能修改源代码

此外,应用程序将在单击“测量完成”按钮后启用单选按钮,询问测量是否有效。我也需要检测这个

摘要:

  • 我如何检测按钮何时启动 (控制)在另一个系统中启用 申请
  • 我该如何处理另一个 申请

  • 我正在Windows NT、Vista和7上使用C#和MS Visual Express 2010。如果你推荐工具,我需要它们是免费的,因为公司的预算非常紧张

    我认为您可以使用FindWindowAPI来完成这项工作,传递标题并接收句柄。
    然后,枚举子组件,您可以找到该按钮(如果您捕捉到它的名称,下次可以使用它更快),并获得启用状态。
    我认为你可以使用软件(脚本)或它的逻辑

    [DllImport("user32.dll", CharSet=CharSet.Auto)]
    public static extern IntPtr FindWindow(string strClassName, int nptWindowName);
    
    编辑:
    选中此项,找到一种简单的方法来完成您需要的操作。

    我希望这对您有所帮助。

    有很多工具。不管花多少钱,它们都比你自己滚的便宜。@David,只是他们可能认为托马斯是个沉船cost@David:证明成本合理、向权力机构提交申请并等待答复可能比编写申请书花费更长的时间:-(为了使用
    AutoIT
    工具,我放弃了编写测试应用程序。到目前为止,这是非常棒和免费的!谢谢你的建议。