private void LaunchNet7Proxy() { IPAddress[] addresses = Dns.GetHostAddresses(Setting.Hostname); if (addresses.Length == 0) { throw new InvalidOperationException(String.Format("Could not resolve hostname '{0}'.", Setting.Hostname)); } ProcessStartInfo info = new ProcessStartInfo(); info.WorkingDirectory = Path.Combine(Directory.GetCurrentDirectory(), "bin"); info.FileName = Path.Combine(info.WorkingDirectory, "Net7Proxy.exe"); info.Arguments = String.Format ( "/ADDRESS:{0} /CLIENT:{1}", addresses[0].ToString(), LauncherUtility.GetShortPathName(Setting.ClientPath) ); if (Setting.UseClientDetours) { info.Arguments += " /L"; } if (Setting.UseLocalCert) { info.Arguments += " /LC"; info.Arguments += String.Format ( " /SSL:{0}", Setting.AuthenticationPort.ToString() ); } try { Process.Start(info); } catch (Exception e) { Program.LogException(e); throw new ApplicationException(String.Format("Could not launch Net7Proxy.\nWorking Directory: {0}\nFileName: {1}\nArguments: {2}\nDetails: {3}", info.WorkingDirectory, info.FileName, info.Arguments, e.Message), e); } }
private void LaunchClient() { IPAddress[] addresses = Dns.GetHostAddresses(Setting.Hostname); if (addresses.Length == 0) { throw new InvalidOperationException(String.Format("Could not resolve hostname '{0}'.", Setting.Hostname)); } ProcessStartInfo info = new ProcessStartInfo(); if (Setting.UseClientDetours) { info.WorkingDirectory = Path.Combine(Directory.GetCurrentDirectory(), "bin"); info.FileName = Path.Combine(info.WorkingDirectory, "Detours.exe"); info.Arguments = String.Format ( "/ADDR:{0} /CLIENT:{1}", addresses[0].ToString(), LauncherUtility.GetShortPathName(Setting.ClientPath) ); } else { info.WorkingDirectory = Path.GetDirectoryName(Setting.ClientPath); info.FileName = Setting.ClientPath; info.Arguments = String.Format ( "-SERVER_ADDR {0} -PROTOCOL {1}", addresses[0].ToString(), "TCP" ); } try { Process.Start(info); } catch (Exception e) { throw new ApplicationException(String.Format("Could not launch client.\nWorking Directory: {0}\nFileName: {1}\nArguments: {2}\nDetails: {3}", info.WorkingDirectory, info.FileName, info.Arguments, e.Message), e); } }