日期:2014-05-17  浏览次数:21107 次

1000个不同的文件分别写入1000个U盘,求解决方案

  现有文件:
  1、1000个文件在1000个文件夹,每个文件60K,且文件名相同,文件夹的命名从1至1000;
  2、还有另外两个文件,分别是一个autorun.inf和一个doc文件(一共不到300K)。

  目的:
  1、这1000个文件要分别写入1000个U盘根目录下;
  2、另外两个文件完全相同,也要分别写到U盘根目录下。
   
  结果:
  上述1000个不同的文件和另外两个文件同时存在于每个U盘根目录下,一共3个文件即可。

  要求:
  1、通过软件工具实现,尽可能快速地完成这项工作;
  2、操作过程中不易出错;
  3、可在多台计算机上同时运行。

------解决方案--------------------
我围观一下而已····
 你们继续···········
------解决方案--------------------
关注,,如何插1000个U盘呢?
------解决方案--------------------
等待 ljc007 的批处理……

哈哈……
------解决方案--------------------
写个autorun程序放到你的u盘里面,再在注册表里面弄个配置项什么的,autorun程序根据注册表配置读u盘所需的文件。
------解决方案--------------------
首先将要拷贝的所有文件路径整理到一个表中,并有一个拷贝标志。

1、程序启动。
2、插入一批U盘(USB HUB问题自行解决)。
3、检测当前U盘盘符。
4、循环判断U盘内是否已经有了要拷贝的文件,如果没有按顺序拷贝,拷贝后,做拷贝标志,至所有U盘全拷贝了,程序暂停,提示再插入下一批U盘。
5、插入新一批U盘后,手动让程序继续执行 3、4步。
6、全部拷贝完了,程序退出。
------解决方案--------------------
呃,楼上的可行........=结果......
------解决方案--------------------
期待。。。。
1000 个。。。。
------解决方案--------------------
1000个U盘插上拔下是项艰巨的工程啊
------解决方案--------------------
说实话,这个工程有点匪夷所思
------解决方案--------------------
SoFunny.bat

BatchFile code
@echo off
setlocal enabledelayedexpansion
rem 假设1000个文件夹、autorun.inf和chang_bo.doc都位于C:\test\
set SrcFolder=C:\test
rem 假设1000个文件都叫做chang_bo.txt
set FileName=chang_bo.txt
rem U盘个数计数器
set CountU=0

:Begin
for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
  rem 兼容中英文版操作系统
  for /f %%h in ('fsutil fsinfo drivetype %%a:^|findstr "Removable.* 可移动"') do (
    if not exist "%%h\%FileName%" (
      set /a CountU+=1
      echo 正在处理第!CountU!个U盘
      copy "%SrcFolder%\!CountU!\%FileName%" "%%h\"
      copy "%SrcFolder%\autorun.inf" "%%h\"
      copy "%SrcFolder%\chang_bo.doc" "%%h\"
    ) else (
      echo U盘%%h已经处理过了
    )
  )
)
echo 这一批U盘搞定了,换下一批吧。换好新U盘后,按回车键继续。要退出本程序,就点关闭按钮。
pause>nul
cls
goto :Begin

------解决方案--------------------
只有写个程序了。
------解决方案--------------------
太牛了
------解决方案--------------------
这个需求确实太牛了。

做一个Win32程序,响应WM_DEVICECHANGE消息,当优盘插入,系统为其安装驱动并分配盘符完毕, 程序中判断Msg.WParam == DBT_DEVICEARRIVAL,如果就绪,通过SetupAPI或DeviceIOControl自动读取优盘的序列号(可以根据这个序列号生成一个独立的Key文件,如果Key文件已有,就不必了),然后将硬盘上已存在的某Key文件复制到优盘上,将这个Key文件与对应的序列号都保存到某日志文件中,写盘完毕后,还是用SetupAPI自动删除USB设备,所有USB盘符都处理完毕后,通知用户换盘,再次插入新U盘后,自动重复这一步骤。

这个程序的原理简单,实现起来稍复杂一些,C++/Delphi/VB等等都可以做,到于批处理我就不清楚能不能做到了。
------解决方案--------------------
这种问题先看看007的再说。。。
------解决方案--------------------
探讨
如何插1000个U盘呢?

------解决方案--------------------