1

我和一个朋友开始构建一个 VBScript,目标是当我们在计算机上插入外部硬盘或 USB 时复制任何打开的文件/某些特定格式的文档(如 pdf、pptx)。我们的脚本仅将特定格式的所有文档从外部硬盘/USB 复制到我的计算机,但我们必须在插入外部硬盘/USB 后手动执行脚本。

我们希望脚本执行的操作:

  1. 插入外部硬盘/USB 时自动启动
  2. 复制后不显示弹出窗口
  3. 可能只复制用户打开的文件(pdf、jpeg、pptx)

这是我们到目前为止所做的:

' foreach.vbs
' Testing the for each function on files
'

' BEGIN

' Create a File System Object to handle files and folders
Set fso = CreateObject("Scripting.FileSystemObject")

' Some vars
src = "C:\" ' The source of search, should be changed before use
dest = "c:\temp\1\" ' destination where we will copy files to

' It would be a bright idead to force and/or create dest before
' starting copy
fso.CreateFolder(dest)

Set ofolder = fso.GetFolder(src) ' set as object
' get all files inside the specified folder
Set allfiles = ofolder.Files 
' Enter a For Each Loop that will process each of the files
For Each sfile in allfiles
' Better get all extensions in lower case
If LCASE(fso.GetExtensionName(sfile.Name)) = "bat" then
' Print out what we find
wscript.echo sfile.Name
fso.CopyFile sfile, dest
End If
Next
4

1 回答 1

0

如果我猜对了,您的实际问题是如何检测 USB 驱动器已插入

你需要一些事件驱动的语言来做到这一点,不幸的是不是 VBScript。但是,如果您不想编程,为什么不使用Task Scheduler

PS 实际上,这个话题(我不喜欢无限循环,但是)是一个可能的答案。

于 2013-02-16T16:00:33.737 回答