需要在空闲注销时从 Windows 向 DOS 应用程序发送按键

需要在空闲注销时从 Windows 向 DOS 应用程序发送按键

我支持旧版 Paradox 4.5 for DOS 系统。我们的用户连接到单个终端服务器 (Windows Server 2003) 来运行 Paradox。我们经常需要将所有人从系统中引导出来。我们的 Paradox Admin 将连接到每个远程桌面会话,将用户从 Paradox 中注销并注销 Windows。

我想使这个过程自动化。

关闭 DOS 窗口而不关闭 Paradox 可能会导致数据损坏。如果我可以将按键发送到应用程序,我就可以正常关闭它。

1)如何发送按键到现有的 DOS 窗口从 Windows?我看过 vbscript 示例和 sendkeys,但这些似乎用于在窗口句柄可用时控制窗口。我需要控制已打开的窗口。

2)是否可以在执行远程桌面空闲注销时自动执行按键发送?

答案1

尚未测试过,但这是一个想法。

1)似乎有可能使用任一 SendKeys 函数通过 Powershell 将击键传递到当前焦点的窗口。

使选定的窗口成为焦点这个帖子似乎提供了 Powershell 代码片段,只要您能以某种方式识别 Paradox 窗口进程即可。如果您做不到这一点,我无法想象这将如何实现自动化,除非您能找到一些特定于 Paradox 操作方式的解决方法。

2)应该能够将任务附加到相关事件 ID这会触发您的脚本。只要脚本在 explorer 及其所有子窗口退出之前处理完毕(您必须对此进行测试),我猜它就可以工作。

相关内容