如何在WPF应用程序中读取STDIN

时间:2010-10-14 15:19:40

标签: .net wpf console stdin

问题是我有一些充当键盘的HID设备(MSR,条形码扫描器,RFID阅读器),我希望能够在我的WPF应用程序中读取他们的输入,而不必在应用程序中的文本字段。

是否可以在WPF应用程序中读取STDIN。

每次调用Console.ReadLine()都会返回null。

1 个答案:

答案 0 :(得分:1)

你需要一个控制台。两条路线:

  1. 使应用程序类型成为控制台应用程序(控制台应用程序也可以具有窗口)。这将确保Windows在启动时创建控制台(或者如果父级控制台在父控制台中运行,则它将在父级控制台内运行)。

  2. 使用P / Invoke调用AllocConsole。这样做的好处是你的应用程序(1)永远不会继承父进程的控制台,(2)应用程序逻辑可以确定它是否以及何时被创建。