我尝试写副本,并安装我创建了所提供的计算机列表的应用程序。它在输入中只有一个计算机名称,但是当我添加两个或更多计算机名称时,它完美地工作,它告诉我它无法从源文件读取,因为它正在使用中。从多个线程相同的文件复制到多个目的地
更新: 我接受其他方法来完成这项工作,如果这只是一个失败的原因。我的最终目标是尽可能快地将同一文件复制到数据中心中的500台计算机。然后在每台计算机上执行该文件。现在执行我正在使用psexec -s,所以我可以绕过UAC。
/*Button Click Code Below*/
/*Install for specific OS*/
foreach (string line in txtServers.Lines)
{
machine = line;
lbOutput.Items.Add("Preparing to copy files....");
/*Copy Files*/
if(!tWorker.IsAlive)
tWorker.Start();
lbOutput.Items.Add("File Copy Complete! Executing installer....");
}
/*File Copy Code Below*/
try
{
File.Copy("Ionic.Zip.Reduced.dll",@"\\"[email protected]"\C$\Temp\Ionic.Zip.Reduced.dll",true);
File.Copy("v5.32bit.Install.exe", @"\\" + machine + @"\C$\Temp\v5.32bit.Install.exe", true);
}
catch (Exception ee)
{
MessageBox.Show(ee.Message);
}
绝对要走的方式,如果文件是小到足以保持记忆。 –