【问题标题】:VBScript - Unmount USB driveVBScript - 卸载 USB 驱动器
【发布时间】:2012-01-02 15:13:00
【问题描述】:

我有一个乏味的项目即将进行。我需要将 USB 闪存驱动器插入计算机,然后将三个文件复制到该驱动器,然后卸载它并重复 3000 次(字面意思)。我希望能想出一些 VBScript 可以将我的操作减少到只是

  1. 插入 U 盘,
  2. 双击.vbs文件,
  3. 移除 USB 闪存驱动器。

我认为只要我每次都将 USB 插入同一个端口,复制和粘贴部分代码并不难。这个假设正确吗?然而,真正的问题是卸载/弹出 USB 驱动器。有没有简单的VB Script代码可以做到这一点?

【问题讨论】:

  • 驱动器将一次插入和拔出一个
  • RemoveDrive 和 Eject Media - Uwe Sieber 的命令行免费软件uwe-sieber.de

标签: vbscript usb unmount


【解决方案1】:

由于您使用拇指驱动器执行此操作,因此您可以将 DevCon 放在上面并使用 DevCon 弹出驱动器。..

http://support.microsoft.com/kb/311272

或者你也可以试试 DevEject

http://translate.google.com/translate?u=http://www.withopf.com/tools/deveject/&langpair=de%7Cen

【讨论】:

  • 您应该让您的脚本在执行之前先将副本自己弹出到 PC,否则它可能无法安全弹出或根本无法弹出,因为它位于您要弹出的 U 盘上。
  • USB 驱动器将是空的,我需要将文件从硬盘驱动器复制到闪存驱动器。我不认为我会被允许将代码文件复制到闪存驱动器,因为我的工作只需要三个特定文件
  • 这些计算机是否联网?必须有比运动鞋网这些文件更好的方法。
  • 该项目的目标是在 3000 个 USB 驱动器中的每一个上放置三个特定文件。我只是在寻找一种脚本解决方案来简化重复性任务。
  • 如果计算机已联网,我可以帮助您完成,您只需插入所有驱动器,转到一台计算机,执行单个脚本,然后拔下驱动器即可。
【解决方案2】:

这是 vbscript unmount 的第一个 Google 结果:Unmounting USB drives


如果脚本以管理员身份运行,这适用于 Windows 7:

Set shell = WScript.CreateObject("WScript.Shell")
shell.Run "mountvol <drive>: /d"

mountvol 包含在 Windows 中。


您甚至可以通过轮询 U 盘挂载到的驱动器号来减少所需的输入,如果存在驱动器,则复制文件然后卸载。

【讨论】:

  • 我在发布之前查看了该线程。问题在于它是一个 .exe 文件而不是 vbscript,我希望所有这些代码都从一个 .vbs 文件运行
  • 这会导致驱动器与驱动器号完全解除关联,因此即使您拔下并重新插入,驱动器也不再挂载。
【解决方案3】:

我的回答不是很相关,但如果您愿意使用 Linux,我将拥有一个完整的软件堆栈。它的作用是连接到 Linux udev 系统并自动格式化连接到特定 USB 端口的 USB 笔式驱动器,然后将文件复制到驱动器,卸载驱动器并通知用户。

我们用它将数据复制到 500 多个商品 USB 笔式驱动器。

【讨论】:

    【解决方案4】:

    我能找到的最佳选择是:

    1) 打开 shell 并运行 mountvol 并找到 GUID

    \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}\
        F:\
    

    2) 在脚本中执行 mountvol /p [GUID]

    Dim eject
    Set eject = WScript.CreateObject("WScript.Shell")
    eject.Run "mountvol \\?\Volume{1be3da43-6602-11e0-b9e6-f11e1c50f5b5}\ /p"
    Set eject = Nothing
    

    这种方法的唯一问题是它需要管理员权限才能删除驱动器号。如果由用户调用,它将卸载驱动器,在这种情况下会留下 F: 幻影。移除 USB 驱动器是安全的,或者您可以弹出幻像来移除它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-06
      • 2018-08-27
      • 2014-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多