コード例 #1
0
 static void OnUpdateDownloadCompleted(UpdateDownloadComplededEventArgs e)
 {
     if(UpdateDownloadCompleted != null)
     UpdateDownloadCompleted(e);
 }
コード例 #2
0
        static void webClient_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
        {
            UpdateDownloadComplededEventArgs args = new UpdateDownloadComplededEventArgs();
              if(e.Cancelled)
            args.Result = UpdateDownloadComplededResult.Canceled;
              else if(e.Error != null)
              {
            args.Result = UpdateDownloadComplededResult.InternalError;
            args.Error = e.Error;
              }
              else
              {
            AsyncArgs state = (AsyncArgs)e.UserState;
            try
            {
              FastZip zip = new FastZip();
              zip.ExtractZip(
            Path.Combine(downloadFolder, state.ArchiveName),
            downloadFolder,
            FastZip.Overwrite.Always,
            null,
            string.Empty,
            string.Empty);
              System.Threading.Thread.Sleep(3000);
              File.Delete(Path.Combine(downloadFolder, state.ArchiveName));
              args.Result = UpdateDownloadComplededResult.Ready;
            }
            catch(Exception ex)
            {
              args.Result = UpdateDownloadComplededResult.IOError;
              args.Error = ex;
            }
            args.UpdateProcessPath = Path.Combine(downloadFolder, state.UpdaterExeName);
            args.UpdateProcessCommandLine = string.Concat(
              "\"", UPDATER_KEY, "\" ",
              "\"", thisFolder, "\" ",
              state.CommandLineArgs.Aggregate(string.Empty, (aggregator, cmd) => string.Concat(aggregator, " \"", cmd, "\"")));
              }

              OnUpdateDownloadCompleted(args);
        }
コード例 #3
0
 void AutoUpdater_UpdateDownloadCompleted(UpdateDownloadComplededEventArgs args)
 {
     if(this.InvokeRequired)
     this.Invoke(new Action<UpdateDownloadComplededEventArgs>(AutoUpdater_UpdateDownloadCompleted), args);
       else
       {
     btnCancelClose.Enabled = true;
     this.Args = args;
     Localize();
       }
 }