コード例 #1
0
ファイル: UpdateHandler.cs プロジェクト: koelblinger/3P
        public DataDiggerUpdaterWrapper()
        {
            UpdatedSoftName      = "DataDigger";
            FolderUnzip          = Config.DataDiggerFolder;
            HowToInstallManually = "<br><br><i>If you wish to manually install " + UpdatedSoftName + ", you have to : <br><ul><li>Download the latest release on " + "https://github.com/patrickTingen/DataDigger/releases".ToHtmlLink("GITHUB") + "</li><li>Extract its content to " + ApplicationFolder.ToHtmlLink() + "</li></ul></i>";

            var localVersion = "v0";
            var releasePath  = Path.Combine(ApplicationFolder, "version.i");

            if (File.Exists(releasePath))
            {
                localVersion = Utils.ReadAllText(releasePath, Encoding.Default).Trim();
            }

            Updater.AssetName        = "datadigger.zip";
            Updater.GitHubReleaseApi = Config.DataDiggerReleasesApi;
            Updater.LocalVersion     = localVersion;
            Updater.GetDownloadUrl   = release => release.zipball_url;

            ExtraActionWhenDownloaded += updater => {
                var subFolders = Directory.GetDirectories(FolderUnzip, "*", SearchOption.TopDirectoryOnly).ToNonNullList();
                if (subFolders.Count == 1)
                {
                    Utils.MoveDirectory(subFolders.First(), FolderUnzip);
                    Utils.DeleteDirectory(subFolders.First(), true);
                }
            };
        }