Czytanie i pisanie do konsoli wiersza poleceń za pomocą VB.net

Zadałem podobne pytanie gdzie indziej, ale być może nie zapytałem o to w odpowiedni sposób lub nie byłem wystarczająco jasny, więc pytam ponownie.

Tutaj chcę uzyskać:

Otwórz wiersz polecenia systemu WindowsUruchom aplikację DOS za pomocą polecenia dosPrzeczytaj zwrócony tekst pokazany w polu DOS i pokaż go w polu tekstowym w formularzu moich okien. Musi to być powtarzane w regularnych odstępach czasu (powiedzmy co sekundę), a pudełko nie powinno być zamknięte.

Krążyłem w kółko, próbując użyć poleceń Process i StartInfo, ale uruchamiają aplikację i zamykają proces od razu. Muszę otworzyć okno DOS i czytać każdy nowy tekst dodany do niego przez aplikację dos. Natknąłem się również na ten wątek, który wydaje się odpowiadać na mój problem, ale w C # nie mogę go przekonwertować:

Czytaj wiersz polecenia Windows STDOUT

Dotarłem do części, w której otworzyłem wiersz poleceń i uruchomiłem aplikację, ale nie wiem, jak odczytywać dane, które od czasu do czasu powraca do konsoli DOS. Chcę stale sprawdzać zmiany, aby móc na nie reagować, być może za pomocą sterowania zegarem.

Proszę pomóż.

Dzięki!

Uruchomiłem kod, który został uprzejmie dostarczony przez Stevedoga i użyłem go w ten sposób:

  Private WithEvents _commandExecutor As New CommandExecutor()

  Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    _commandExecutor.Execute("c:\progra~2\zbar\bin\zbarcam.exe", "")
  End Sub

  Private Sub _commandExecutor_OutputRead(ByVal output As String) Handles _commandExecutor.OutputRead
    txtResult.Text = output
  End Sub

Ale wszystko, co dostaję, to puste pudło. Aplikacja zbarcam działa poprawnie, ponieważ widzę podgląd kamery i widzę ją również, wykrywając kody QR, ale tekst nie jest wyświetlany w polu DOS i_commandExecutor_OutputRead sub nie jest uruchamiany, dopóki nie zamknę okna DOS.

questionAnswers(2)

yourAnswerToTheQuestion