Vbscript 三重确认(不需要)

Vbscript 三重确认(不需要),vbscript,Vbscript,我已经添加了一个确认对话框到vbs脚本(由第三方提供),但我不需要点击“确定”3次,并希望确认提示只显示一次。。。在我(有限)的知识,我不设法做到这一点,有人可以请更正此代码 Set fso = CreateObject("Scripting.FileSystemObject") a = "C:\Path to file 1\File 1.txt" b = "C:\Path to file 2\File 2.txt" RenameItem a, a & ".bak" RenameIt

我已经添加了一个确认对话框到vbs脚本(由第三方提供),但我不需要点击“确定”3次,并希望确认提示只显示一次。。。在我(有限)的知识,我不设法做到这一点,有人可以请更正此代码

Set fso = CreateObject("Scripting.FileSystemObject")

a = "C:\Path to file 1\File 1.txt"
b = "C:\Path to file 2\File 2.txt"

RenameItem a, a & ".bak"
RenameItem b, a
RenameItem a & ".bak", b

Sub RenameItem(oldname, newname)
  If fso.FileExists(oldname) Or fso.FolderExists(oldname) Then
If fso.FileExists(oldname) Then Set f = fso.GetFile(oldname)
If fso.FolderExists(oldname) Then Set f = fso.GetFolder(oldname)
f.Name = fso.GetFileName(newname)
  End If
Msgbox "Files were toggled successfully" & vbNewLine & vbNewLine & "(click the ""OK"" button to exit)"
End Sub
RenameItem()
是一种可重用的代码单元。每次调用sub时,它都会执行其中的所有内容,包括
MsgBox

将此行移到子对象之外:

Msgbox "Files were toggled successfully" & vbNewLine & vbNewLine & "(click the ""OK"" button to exit)"
完整代码 @蒂姆:谢谢你的快速回答和(非常感谢)解释:)
Set fso = CreateObject("Scripting.FileSystemObject")

a = "C:\Path to file 1\File 1.txt"
b = "C:\Path to file 1\File 1.txt"

RenameItem a, a & ".bak"
RenameItem b, a
RenameItem a & ".bak", b

Msgbox "Files were toggled successfully" & vbNewLine & vbNewLine & "(click the ""OK"" button to exit)"

Sub RenameItem(oldname, newname)
    If fso.FileExists(oldname) Or fso.FolderExists(oldname) Then
        If fso.FileExists(oldname) Then Set f = fso.GetFile(oldname)
        If fso.FolderExists(oldname) Then Set f = fso.GetFolder(oldname)
        f.Name = fso.GetFileName(newname)
    End If
End Sub