static void Main(string[] args) { var arg = new TFSUndoArgs(); Console.WriteLine("Enter a command to Begin: "); Console.Write("> "); var input = Console.ReadLine(); while (input != "quit" && input != "exit") { switch(input) { case "set-user": //Console.WriteLine(); Console.Write("User: "******"set-workspace": //Console.WriteLine(); Console.Write("Workspace: "); var space = Console.ReadLine(); arg.Workspace = space; break; case "set-server": //Console.WriteLine(); Console.Write("Server: "); var server = Console.ReadLine(); arg.Server = server; break; case "undo": Console.Write("Path: "); var path = Console.ReadLine(); arg.ItemPath = path; Undo(arg); break; case "echo": Console.WriteLine(arg.ToString()); break; case "?": Console.WriteLine("set-user, set-workspace, set-server, undo, echo"); break; } Console.WriteLine(); Console.Write("> "); input = Console.ReadLine(); } Console.WriteLine("Exiting"); Console.ReadLine(); }
static void Undo(TFSUndoArgs args) { var path = @"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe"; try { var startinfo = new ProcessStartInfo(); startinfo.FileName = path; startinfo.Arguments = args.ToString(); startinfo.UseShellExecute = false; startinfo.RedirectStandardOutput = true; var p = Process.Start(startinfo); p.Start(); var output = p.StandardOutput.ReadToEnd(); Console.WriteLine(output); p.WaitForExit(); } catch (Exception ex) { Console.WriteLine("Failure!"); Console.WriteLine(); Console.WriteLine(ex.ToString()); } }