【发布时间】:2010-06-01 21:01:22
【问题描述】:
我想让我的应用程序最小化,以便在按下热键时捕获在另一个应用程序窗口中选择的数据。我的应用程序绝对没有焦点。此外,当按下热键时,我想呈现一个淡入淡出的弹出窗口(Outlook 风格),这样我的应用程序就永远不会获得焦点。
至少我想捕获窗口名称、进程 ID 和 选定 数据。有焦点的应用程序不是我的应用程序?
我知道一种选择是嗅探剪贴板,但还有其他解决方案吗?
这是为了审核数据进入另一个我无法控制的系统的速率。它是一个大型机仿真客户端程序(attachmate aka java-hosted telnet,支持 3250)。
计划是
- 在 Application X 中完成数据输入。
- 在 App X 中选择屏幕的某个部分,这是数据输入的证明(交易 ID)。
- 按下 Magic Hotkey,然后将选择“发送”到我的应用程序。
- 从 System.environment 或 system.Threading 我可以找到 Windows 登录。
- 同样,我也可以捕捉时间。
- 所有数据都将记录到 SQL。
- 一旦完成,就会弹出 Outlook 样式显示数据条目已记录。
任何想法。
【问题讨论】:
-
在 App X 中选择屏幕的某个部分可能提供数据输入的证据,当然不是证据。
-
实际上我从主框架应用程序中获得了一个提要。交易ID是单调递增的数字,不能伪造。对于给定的数据输入日期,只能有一个唯一的(想想自动编号/身份)交易 ID,我可以针对提要进行验证。
标签: winforms winapi .net-3.5 interop applet