如题 ~~~~~~~~~~~~~~~~~~~~~~~~~
解决方案 »
- Socket Tcp/Udp 调试程序应该怎么开发
- 对这段代码不是很清楚啊
- C#读取DBF文件
- 求救! 如何获取缓存中的KEY 线等
- RSA 解密 8为对称密钥问题
- 求一段session代码,如何把用户名从一个页面传到另一个页面?
- 找工作 真郁闷 弟兄们都来看看呀
- 关于VS2005和access更新问题(100分)
- 本人连接access数据库在我的电脑上可以,但是放在互联网上就不行了,也不提示任何错误请大家给看看。
- 关于通过datetimePicker控件查询的问题
- 各位大侠,commandArgument只能绑定id值??
- server端向client端连续发送图片时,client端的接收如何处理?
private void button3_Click(object sender, EventArgs e)
{
if (backgroundWorker1.IsBusy)
{
return;
}
backgroundWorker1.RunWorkerAsync(new Caobject(serverurl.Text, localurl.Text));
} /// <summary>
/// 递归核心
/// </summary>
/// <param name="SerUrl"></param>
/// <param name="LocUrl"></param>
private void Dir(string SerUrl, string LocUrl)
{ DirectoryInfo dirser = new DirectoryInfo(SerUrl);
DirectoryInfo[] adirser = dirser.GetDirectories();
DirectoryInfo dirloc = new DirectoryInfo(LocUrl);
DirectoryInfo[] adirloc = dirloc.GetDirectories(); CopyFiles(SerUrl, LocUrl);
foreach (DirectoryInfo adirsers in adirser)
{
string DirFullName = LocUrl + "\\" + adirsers.Name;
if (!Directory.Exists(DirFullName))
{
Directory.CreateDirectory(DirFullName);
}
Dir(adirsers.FullName, DirFullName);
}
} /// <summary>
/// 复制文件
/// </summary>
private void CopyFiles(string SerUrl, string LocUrl)
{
string[] serfilenames = Directory.GetFiles(SerUrl).Select(s => System.IO.Path.GetFileName(s)).ToArray();
string[] locfilenames = Directory.GetFiles(LocUrl).Select(s => System.IO.Path.GetFileName(s)).ToArray();
foreach (string serurl in serfilenames)
{
FileInfo SerFile = new FileInfo(SerUrl + "\\" + serurl);
string SerFileLastWriteTime = SerFile.LastWriteTime.ToString();
string SerFileName = SerFile.Name.ToString(); string SerFileUrl = SerUrl + "\\" + SerFileName;
string LocFileUrl = LocUrl + "\\" + SerFileName; FileInfo LocFile = new FileInfo(LocUrl + "\\" + SerFileName);
string LocFileLastWriteTime = LocFile.LastWriteTime.ToString(); if (SerFileLastWriteTime != LocFileLastWriteTime)
{
try
{
File.Copy(SerFileUrl, LocFileUrl, true);
}
catch
{
MessageBox.Show("文件" + SerFileUrl + "被某人打开着,无法复制");
}
} }
} private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
BackgroundWorker worker = sender as BackgroundWorker;
string ser = serverurl.Text;
string loc = localurl.Text;
Dir(ser, loc);
//backgroundWorker1.ReportProgress(100);
}
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
progressBar1.Value = e.ProgressPercentage;
}被自己写死了。。怎么把值传过来设置进度呢。。
http://www.cnblogs.com/zhili/archive/2013/05/11/EAP.html