【问题标题】:Change properties of button of other application?更改其他应用程序按钮的属性?
【发布时间】:2015-05-10 17:15:06
【问题描述】:

我使用了api函数:

SendMessage(hWnd, WM_SETTEXT, 0, "Tested");//rename caption
EnableWindow(hWnd, false);//disable 

但不适用于 .NET 应用程序。

SendMessage 函数返回 true,我检查按钮的标题是否已重命名(我使用 spy++ 进行检查)。但是表单中按钮的标题不会改变。这个问题只发生在.NET的控件上,使用Delphi的控件就可以了,没问题。我认为要更改.NET 控件的属性,必须使用可访问性类。我使用 AccessibleObjectFromWindow api 函数来获取 .NET 控件的状态,但我不知道如何设置这些控件的状态,请告诉我。

【问题讨论】:

  • 您需要更具描述性。它怎么不工作? SendMessage 的返回值是多少?

标签: winapi


【解决方案1】:

您的代码适用于 Win32 BUTTON 控件,但并非所有按钮都以这种方式实现。有些框架不使用 Win32 BUTTON 控件,这就是您遇到的情况。

您面临的问题是您选择了错误的自动化技术。您应该使用平台自动化框架 UI 自动化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-26
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多