public void Launch(IProcessManager processManager) {
Contract.Requires<ArgumentNullException>(Path != null);
Contract.Requires<ArgumentException>(!String.IsNullOrWhiteSpace(Path));
//if (!UserSettings.Current.AppOptions.UseElevatedService) {
var startInfo = new ProcessStartInfoBuilder(Path, Parameters) {
WorkingDirectory = Path.ToAbsoluteFilePath().ParentDirectoryPath,
//AsAdministrator = RunAsAdmin
}.Build();
MainLog.Logger.Info("Launching external app: " + startInfo.Format());
processManager.StartAndForget(startInfo);
//} else {
// _wcfClient.Value.Updater_StartAndForget(Path, Parameters, System.IO.Path.GetDirectoryName(Path), RunAsAdmin);
//}
}