我在网上和这里都进行了研究,但我还没有看到任何人和我有同样问题的人。
我使用AutoIt Window Info工具来获取另一个应用程序标签(静态)ID。AutoIt Window Info工具为我提供了该控件(标签)的 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)。但是另一个应用程序有很多标签,我只能得到一个 ID 为 1044 的应用程序。例如,还有另一个 ID 为 1043 的标签,但是当我应用相同的内容时,它返回一个空字符串。
我能做些什么来解决这个问题?
AutoIt Window Info Tool 的屏幕: