Проверка старого и нового файла, создание одного, если ничего не существует с помощью vbscript

Поэтому я пытаюсь написать сценарий для Windows, чтобы проверить, существует ли для пользователя как старый, так и новый профиль Outlook. Если старый существует, а новый нет, он копирует старый и дает ему новое имя файла.

У меня есть общее представление о синтаксисе, выглядит примерно так.

If Exist \users\%%UserName%%\%%OldFileName%% 

   If NOT Exist \users\%%UserName%%\%%NewFileName%% 

      copy \users\%%UserName%%\%%OldFileName%%  \users\%%UserName%%\%%NewFileName%% 

   End If

End If

ОБНОВЛЕНО!
Вот что мне удалось придумать.

Dim objFSO

Set objFSO = CreateObject("Scripting.FileSystemObject")

        strOldFileName = “Default Outlook Profile.NK2”
        strNewFileName = “Default Profile.NK2”

    If objFSO.FileExists "\\comfilesrv1\users\%%UserName%%\&OldFileName&" Then
        objFSO.CopyFile "\\comfilesrv1\users\%%UserName%%\&OldFileName&", "\\comfilesrv1\users\%%UserName%%\&NewFileName&"
    End If

Я не прошу никого писать это для меня, но если бы кто-то мог указать мне правильное направление, это было бы здорово.


person jzacharia    schedule 14.08.2012    source источник
comment
& — это оператор конкатенации строк в VBScript, я не понимаю, чего вы хотите добиться с помощью синтаксиса %%. В объекте файловой системы есть метод Copy, который, кстати, хорошо задокументировано.   -  person krlmlr    schedule 14.08.2012
comment
Спасибо, я посмотрю на это. Пока % был заполнителем.   -  person jzacharia    schedule 14.08.2012


Ответы (1)


Попробуй это

Dim objFSO, strOldFileName, strNewFileName, strOldProfile, strNewprofile, bOverwrite

Set objFSO = CreateObject("Scripting.FileSystemObject")
bOverwrite = true

strOldFileName = "Default Outlook Profile.NK2"
strNewFileName = "Default Profile.NK2"

strOldProfile = "\\comfilesrv1\users\" & UserName & "\" & strOldFileName
strNewprofile = "\\comfilesrv1\users\" & UserName & "\" & strNewFileName

If objFSO.FileExists(strOldProfile) Then
  objFSO.CopyFile strOldProfile, strNewprofile, bOverwrite
End If
person peter    schedule 14.08.2012