Ejemplo n.º 1
0
 private void CabManagerOnProgress(object sender, ICabProgressionEventArgs e)
 {
     if (e.EventType == CabEventType.GlobalProgression)
     {
         OnProgress?.Invoke(this, ArchiverEventArgs.NewProgress(e.CabPath, e.RelativePathInCab, e.PercentageDone));
     }
 }
Ejemplo n.º 2
0
        private void ArchiverOnOnProgress(object sender, ICabProgressionEventArgs e)
        {
            switch (e.EventType)
            {
            case CabEventType.GlobalProgression:
                if (e.PercentageDone < 0 || e.PercentageDone > 100)
                {
                    throw new Exception($"Wrong value for percentage done : {e.PercentageDone}%.");
                }
                _hasReceivedGlobalProgression = true;
                _cancelSource?.Cancel();
                break;

            case CabEventType.FileProcessed:
                _nbFileProcessed++;
                break;

            case CabEventType.CabinetCompleted:
                _nbArchiveFinished++;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Ejemplo n.º 3
0
        private static void CabManagerOnProgress(object sender, ICabProgressionEventArgs e)
        {
            switch (e.EventType)
            {
            case CabEventType.GlobalProgression:
                Console.WriteLine($"Global progression : {e.PercentageDone}%, current file is {e.RelativePathInCab}");
                break;

            case CabEventType.FileProcessed:
                Console.WriteLine($"New file processed : {e.RelativePathInCab}");
                break;

            case CabEventType.CabinetCompleted:
                Console.WriteLine($"New cabinet completed : {e.CabPath}");
                break;
            }
        }