Как скопировать файлы MyDocuments во вновь созданную папку?

Итак, у меня есть отлично работающий скрипт... за исключением того факта, что он не копирует файлы / папки из моих MyDocuments в мою новую папку. Я много раз ломал голову над этим и попробовал несколько разных команд, чтобы посмотреть, сработает ли это. Он копирует папку "Документы" с папкой "Mymusic" внутри, но не папку и файл, которые я там выборочно поместил. Ниже приведен скрипт, который у меня сейчас есть...

Option Explicit

Dim objWShell, userName, objFso, Wshshell, strDocuments, strLocation

Set objFso = WScript.CreateObject("Scripting.FileSystemObject")

Set objWShell = WScript.CreateObject("WScript.Shell")

Set WshShell = Wscript.CreateObject("WScript.Shell")

userName = objWShell.expandEnvironmentStrings("%userName%")

If Not objFso.FolderExists("C:\" + "Backups\") Then
  objFso.CreateFolder ("C:\" + "Backups\")
End If

If Not objFso.FolderExists("C:\Backups\" + userName +"\") Then
  objFso.CreateFolder ("C:\Backups\" + userName + "\")
End If

strDocuments = ("C:\Users\" + userName +"\Documents")

strLocation = ("C:\Backups\" + userName + "\")

If objFso.FolderExists (strDocuments) Then
  objFso.CopyFolder strDocuments, strLocation, True
End If

1 ответ

Я считаю, что ответом на мою проблему является добавление "\" в конце указанных папок, а также команда CopyFolder. Пока я вдали от своего компьютера для сценариев, может ли кто-нибудь подтвердить мои выводы?

Option Explicit

Dim objWShell, userName, objFso, Wshshell, strDocuments, strLocation

Set objFso = WScript.CreateObject("Scripting.FileSystemObject")    
Set objWShell = WScript.CreateObject("WScript.Shell")    
Set WshShell = Wscript.CreateObject("WScript.Shell")

userName = objWShell.expandEnvironmentStrings("%userName%")

If Not objFso.FolderExists("C:\" + "Backups" + "\") Then    
  objFso.CreateFolder ("C:\" + "Backups" + "\")     
End If

If Not objFso.FolderExists("C:\Backups\" + userName +"\") Then    
  objFso.CreateFolder ("C:\Backups\" + userName + "\")    
End If

strDocuments = ("C:\Users\" + userName + "\" + "Documents"+ "\")    
strLocation = ("C:\Backups\" + userName + "\")

If objFso.FolderExists (strDocuments) Then    
  objFso.CopyFolder strDocuments, strLocation, True     
End If
Другие вопросы по тегам