Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- svn list "http://myserver:84/svn/Documents/Instruments/" --xml --no-auth-cache --username myuser --password mypassword
- string cmd = "svn.exe";
- string arguments = "list "http://myserver:84/svn/Documents/Instruments/" --xml --no-auth-cache --username myuser --password mypassword";
- int ms = 5000;
- ProcessStartInfo psi = new ProcessStartInfo(cmd);
- psi.Arguments = arguments;
- psi.RedirectStandardOutput = true;
- psi.WindowStyle = ProcessWindowStyle.Normal;
- psi.UseShellExecute = false;
- Process proc = Process.Start(psi);
- StreamReader output = new StreamReader(proc.StandardOutput.BaseStream, Encoding.UTF8);
- proc.WaitForExit(ms);
- if (proc.HasExited)
- {
- return output.ReadToEnd();
- }
- string cmd = "cmd";
- string arguments = "/S /C "" + exe + " " + args + """;
- ProcessBufferHandler bufferHandler = new ProcessBufferHandler(proc.StandardOutput.BaseStream,
- Encoding.UTF8);
- ThreadPool.QueueUserWorkItem(ProcessStream, bufferHandler);
- proc.WaitForExit(ms);
- if (proc.HasExited)
- {
- bufferHandler.Stop();
- return bufferHandler.ReadToEnd();
- }
- private class ProcessBufferHandler
- {
- public Stream stream;
- public StringBuilder sb;
- public Encoding encoding;
- public State state;
- public enum State
- {
- Running,
- Stopped
- }
- public ProcessBufferHandler(Stream stream, Encoding encoding)
- {
- this.stream = stream;
- this.sb = new StringBuilder();
- this.encoding = encoding;
- state = State.Running;
- }
- public void ProcessBuffer()
- {
- sb.Append(new StreamReader(stream, encoding).ReadToEnd());
- }
- public string ReadToEnd()
- {
- return sb.ToString();
- }
- public void Stop()
- {
- state = State.Stopped;
- }
- }
- Process command = new Process();
- command.EnableRaisingEvents = false;
- command.StartInfo.FileName = "svn.exe";
- command.StartInfo.Arguments = "your svn arguments here";
- command.StartInfo.UseShellExecute = false;
- command.StartInfo.RedirectStandardOutput = true;
- command.Start();
- while (!command.StandardOutput.EndOfStream)
- {
- Console.WriteLine(command.StandardOutput.ReadLine());
- }
Add Comment
Please, Sign In to add comment