更改其他应用程序按钮的属性?

时间:2015-05-10 17:15:07

标签: winapi

我使用了api函数:

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

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

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

1 个答案:

答案 0 :(得分:0)

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

您遇到的问题是您选择错误的自动化技术的结果。您应该使用平台自动化框架UI Automation。