4

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

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

我认为只要我每次都将 USB 插入同一个端口,复制和粘贴部分代码并不难。这个假设正确吗?然而,真正的问题是卸载/弹出 USB 驱动器。是否有任何简单的 VB 脚本代码可以完成此操作?

4

4 回答 4

1

这是vbscript unmount的第一个 Google 结果:卸载 USB 驱动器


如果脚本以提升权限运行(作为管理员),这适用于 Windows 7:

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

mountvol包含在 Windows 中。


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

于 2011-11-21T02:00:16.177 回答
0

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

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

或者你也可以试试 DevEject

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

于 2011-11-21T01:59:39.020 回答
0

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

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

于 2014-09-20T05:36:22.763 回答
0

我能找到的最佳选择是:

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 驱动器是安全的,或者您可以弹出幻像以将其移除。

于 2018-04-10T22:22:27.843 回答