سلام
خوب شما باید یکم بنویسید جایی که مشکل دارید بچه ها کمک کنن، اینجوری نمی شه که براتون کد بنویسن
من یه تایع کپی و نحوه ی استفاده ش رو می ذارم اینجا، شما می تونید با توجه به برنامه تون آرگومان ورودی هم براش در نظر بگیرید
خدمت شما:
private void button1_Click(object sender, EventArgs e)
{
Copy();
MessageBox.Show("Copy Done !!!");
progressBar1.Value = 0;
}
void Copy()
{
int halfAMeg = (int)(1024 * 1024 * 0.5);
FileStream strIn = new FileStream("filePathIn", FileMode.Open);
FileStream strOut = new FileStream("filePathOut", FileMode.Create);
byte[] buf = new byte[halfAMeg];
while (strIn.Position < strIn.Length)
{
int len = strIn.Read(buf, 0, buf.Length);
strOut.Write(buf, 0, len);
SetProBar(strIn.Position, strIn.Length);
}
}
private delegate void SetProBar_CallBack(long val, long max);
private void SetProBar(long val, long max)
{
if (progressBar1.InvokeRequired)
{
SetProBar_CallBack callBack = new SetProBar_CallBack(SetProBar);
this.Invoke(callBack, new object[] { val, max });
}
else
{
progressBar1.Maximum = Int32.MaxValue;
progressBar1.Value = (int)(Int32.MaxValue / (max / val));
}
}
موفق باشید :)