public void Start() { string configPath = Path.GetDirectoryName(config); string configFile = Path.GetFileName(config); if (!Directory.Exists(UtilsHelper.FixedLogDir)) { Directory.CreateDirectory(UtilsHelper.FixedLogDir); } string logFile = UtilsHelper.FixedLogDir + "\\" + configFile + ".log"; openVPNprocess = new Process(); openVPNprocess.StartInfo.FileName = vpnPath; openVPNprocess.StartInfo.WorkingDirectory = configPath; openVPNprocess.StartInfo.Arguments = string.Format("--service {0} --config \"{1}\" --log \"{2}\"", terminatorEventName, configFile, logFile); openVPNprocess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; openVPNprocess.StartInfo.CreateNoWindow = true; openVPNprocess.EnableRaisingEvents = true; openVPNprocess.Exited += new EventHandler(openVPNclient_exit); openVPNserviceRunner.logOnConsole("Starting OpenVPN configuration: " + configFile); openVPNprocess.Start(); ServiceHelper.MinimizeFootprint(); }