public void Create(DreamDaemonArguments args) { var argsBuilder = new StringBuilder($"{args.ExecutablePath} {args.Port}"); if (args.Safe) { argsBuilder.Append(" -safe "); } if (args.Invisible) { argsBuilder.Append(" -invisible "); } if (args.LogSelf) { argsBuilder.Append(" -logself "); } var info = new ProcessStartInfo(_dreamDaemonPath) { Arguments = argsBuilder.ToString() }; var dreamDaemonProcess = new Process() { StartInfo = info, EnableRaisingEvents = true, }; dreamDaemonProcess.Exited += DreamDaemonProcessOnExited; dreamDaemonProcess.Start(); _process = dreamDaemonProcess; }
public IDreamDaemonProcess StartDreamDaemon(DreamDaemonArguments args) { var process = new DreamDaemonProcess(_dreamDaemonPath); process.Create(args); return(process); }