Skip to content

lostmsu/NFly.BitsTransfer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NFly.BitsTransfer

A .Net wrapper library for Windows Background Intelligent Transfer Service (BITS)

DEMO

DEMO

Features

  • Download Single File
  • Download Folder
  • Progress report
  • Estimated downloading time
  • Estimated downloading speed

Usage

var jobName = "YOUR_JOB_NAME"
var job = BitsJob.GetJob(jobName);

//remove existing job
if(job!=null){
  job.Cancel();  
}

//create job
job = BitsJob.Create(jobName);
job.Pause();
job.AddFile("REMOTE_FILE", "PATH_OF_LOCAL_FILE");

//watch progress
job.OnProgress += progress =>{
  var status = job.State;
  if(status == BitsJob.BG_JOB_STATE.BG_JOB_STATE_TRANSFERRED){
    //files transferred, mark job as completed
    job.Complete();

    Console.WriteLine("Job completed, you can access downloaded files now.");
    return;
  }

  Console.WriteLine("----");
  Console.WriteLine("BytesTotal: {0}",progress.BytesTotal);
  Console.WriteLine("BytesTransferred: {0}",progress.BytesTransferred);
  Console.WriteLine("Bytes Per Second: {0}",progress.EstimatedSpeed);
  Console.WriteLine("Remaining Seconds: {0}",progress.EstimatedTimeRemaining);
};

//pause job
job.Pause();

//resume job
job.Resume();

About

A .Net wrapper library for Windows Background Intelligent Transfer Service (BITS)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%