我在网上和这里都进行了研究,但我没有看到任何人和我有同样的问题。
我使用 AutoIt窗口信息工具获取另一个应用程序标签(静态)ID。 AutoIt窗口信息工具为我提供该控件的ID(标签)。所以我可以使用以下代码获取该文本:
For Each pr As Process In Process.GetProcessesByName("AnotherAppExeName")
Dim sb as New StringBuilder
sb.Capacity = 500
GetDlgItemText(pr.MainWindowHandle, 1044, sb, sb.Capacity)
'1044 Is the ID of another application's label
'I print the string:
MessageBox.Show(sb.ToString)
Next
这很有效。我可以从另一个应用程序获取控件的文本(id:1044)。但是其他应用程序有很多标签,我只能获得1044 ID的标签。例如,有另一个带有1043 ID的标签,但是当我应用相同的东西时,它会返回一个空字符串。
我该怎么做才能解决这个问题?
来自AutoIt窗口信息工具的屏幕: