Exemplo n.º 1
0
        private void StartUpdateInstaller(string packagePath, string installerPath)
        {
            RaiseUpdateStatusChanged(UpdateStatus.StartingInstaller);

            // Create update settings
            var updateConfig = new UpdateInstallerConfig()
            {
                PackagePath                                 = packagePath,
                RestartHostApplication                      = AutoRestartHostApplication,
                RestartHostApplicationArguments             = AutoRestartHostApplication ? RestartHostApplicationArguments : string.Empty,
                ApplicationName                             = ApplicationName,
                HostApplicationPath                         = string.IsNullOrEmpty(HostApplicationPath) ? Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) : HostApplicationPath,
                HostApplicationProcessPath                  = Assembly.GetEntryAssembly().Location,
                MillisecondsToWaitForHostApplicationToClose = MillisecondsToWaitForHostApplicationToClose,
                ForceClosingHostApplication                 = ForceClosingHostApplication,
                UpdateWindowBaseColor                       = UpdateWindowBaseColor,
                UpdateWindowCanvasColor                     = UpdateWindowCanvasColor
            };

            // Start UpdateInstaller
            var procStartInfo = new ProcessStartInfo()
            {
                FileName        = installerPath,
                Arguments       = updateConfig.ToString(),
                UseShellExecute = false,
                Verb            = InstallAsAdmin ? "runas" : string.Empty
            };

            Process.Start(procStartInfo);
            UpdateInstallerStarted?.Invoke();
        }
Exemplo n.º 2
0
        public static void Main(UpdateInstallerConfig config, bool isAfterCopyFiles)
        {
            if (!isAfterCopyFiles /*&& config.NewApplicationVersion is null && config.CurrentApplicationVersion is null*/)
            {
                Directory.Delete(Path.Combine(config.HostApplicationPath, @"Data\Importer Presets"), true);

                Directory.Delete(Path.Combine(config.HostApplicationPath, @"Data\Tweaks\Reviewed"), true);

                var pCustomObjectDatabase = Path.Combine(config.HostApplicationPath, @"Data\Custom Objects\Reviewed");
                if (Directory.Exists(pCustomObjectDatabase))
                {
                    Directory.Delete(pCustomObjectDatabase, true);
                }
            }
        }