1

我将如何使用 Compact Framework 与 Windows CE 上的现有可执行文件进行交互?

我想我忽略了一些简单的事情。

这是场景:

我正在尝试编写一个小应用程序来执行一些常见功能,例如创建具有指定密码的用户。

windows 目录有一些我想使用的可执行文件。我遇到的问题是“passwd.exe”

这个可执行文件不能通过传递参数来使用。它提示输入。

使用示例:

input>  passwd.exe MyUser
output> Current Password: [wait for input]
output> New Password: [wait for input]
output> Retype Password: [wait for input]

因此,我在非移动框架中看到了 System.Diagnostics.ProcessStartInfo 的一些类似用途,但这似乎不是 Compact Framework 的选项。

提前致谢!

4

1 回答 1

0

与现有可执行文件“交互”将在很大程度上取决于可执行文件。

首先,让我记录下来,我非常倾向于询问设备 OEM,他们是否有办法以编程方式完成所有这些工作,而不是试图将一些模拟用户输入拼凑在一起。在这种情况下,应用程序可能会在系统中的某个位置设置该信息,因此如果您可以这样做并避免他们的应用程序 altogetehr,它将变得更干净。

如果这不可用,那么如果您想要与支持命令行选项交互的应用程序,那么这将是最简单的。您可以使用 Process 和 ProcessStartInfo 类发送命令行参数。

如果没有,那么您必须模拟实际的用户输入。再次,这将如何工作取决于您尝试与之交互的应用程序。根据您的描述,您很可能必须通过 P/Invoking PostKeyboardMessage 或 keydb_event 来模拟键盘敲击(SDF 有一个 SendKeys 的实现可以简化这一点)。

请注意,在发送这些击键之前,您必须确保输入的目标窗口已聚焦。

于 2009-12-18T18:22:07.943 回答