0

几天来,我正在尝试创建一个程序,该程序可以在另一个应用程序中的文本框中读取和写入值。更具体地说:我想在 HP Service Manager 中自动更新票证类别。

我的第一次尝试是使用 SendKeys。但是我遇到的问题是,这种方法似乎不太可靠,因为我需要远离另一个文本字段,并且使用发送 TAB 的循环不可靠[当然我添加了一个 Application.DoEvents() 和一个 Thread.Sleep]。经过一段时间的测试,我现在根本无法控制 HPSM [SendKeys 在每个程序上执行,除了 HPSM]。不知道出了什么问题,但我在互联网上读到有几个问题[仅适用于运行 Visual Studio,仅在调试等时],所以我放弃了这个解决方案。

如果我可以直接访问所需的文本字段,我会欢迎它。现在,使用 Spy++,我可以选择所需的文本字段。但不幸的是,没有固定值来标识某个文本字段:无法以编程方式执行此操作。

唯一似乎始终保持不变的是 HPSM 提供的“Windows”的结构/层次结构 [参见随附的屏幕截图]。现在我的想法:有没有办法遍历这些子窗口并读取/修改某个窗口的“窗口标题”部分?还是有另一种更简单的方法来让这个傻瓜自动化?

提前感谢每一个帮助,因为我慢慢地陷入绝望:)

HPSM结构:

在此处输入图像描述

4

0 回答 0