This code sample demonstrates how to execute a console command and capture the output. The VB versions takes the “short route” using the shell command, while the C# version takes the approach of starting a process object, which gives you greater control over the proccess and enables you to pipe the outpout directly into the application. It shouldnt be too hard to convert the C# version into VB.NET, which i leave as a challenge to you
VB.NET Version
' --- Run the command-prompt command "query session" and return ' the results to the user Shell(String.Format("cmd /c {0}", "query session > output.txt"), AppWinStyle.NormalFocus, True) Using oInfile As New System.IO.StreamReader("output.txt") Dim sContent As String = oInfile.ReadToEnd MsgBox(sContent) End Using ' //
C# Version
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Diagnostics; // Dont forget to add this one namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // Run the command prompt command "query session" and return the // results to the user string sCmd = "/c query session"; // Define the process information ProcessStartInfo pInfo = new ProcessStartInfo("cmd",sCmd); pInfo.RedirectStandardOutput = true; pInfo.UseShellExecute = false; pInfo.CreateNoWindow = false; // set this to TRUE to supress the standard black window // Create and run the process Process oProc = new Process(); oProc.StartInfo = pInfo; oProc.Start(); string sResult = oProc.StandardOutput.ReadToEnd(); MessageBox.Show(sResult); } } }