示例#1
0
        private void RunInstaller()
        {
            if (InstallType == InstallType.Event)
            {
                OnInstallRequested();
            }
            else
            {
                try
                {
                    using (Process process = new Process())
                    {
                        ProcessStartInfo psi = new ProcessStartInfo()
                        {
                            FileName        = DownloadLocation,
                            Arguments       = "/UPDATE",
                            UseShellExecute = true
                        };

                        if (InstallType == InstallType.Silent)
                        {
                            psi.Arguments += " /SILENT";
                        }
                        else if (InstallType == InstallType.VerySilent)
                        {
                            psi.Arguments += " /VERYSILENT";
                        }

                        if (Helpers.IsDefaultInstallDir() && !Helpers.IsMemberOfAdministratorsGroup())
                        {
                            psi.Verb = "runas";
                        }

                        process.StartInfo = psi;
                        process.Start();
                    }
                }
                catch
                {
                }
            }
        }