Vbscript 当用户以写访问权限打开文件时覆盖文件

Vbscript 当用户以写访问权限打开文件时覆盖文件,vbscript,Vbscript,我正在编写一个VBScript来将文件从源复制到目标。它可以从源文件复制到目标文件,但如果我们试图将文件覆盖到目标文件,并且如果任何用户在目标文件中打开同一文件,则不会覆盖该文件 注意:打开文件的用户具有写入权限 有人能帮忙吗?下面是函数,但必须删除在目标中打开的文件 Sub Clear_All_Files_And_SubFolders_In_Folder() 'Delete all files and subfolders 'Be sure that no file is op

我正在编写一个VBScript来将文件从源复制到目标。它可以从源文件复制到目标文件,但如果我们试图将文件覆盖到目标文件,并且如果任何用户在目标文件中打开同一文件,则不会覆盖该文件

注意:打开文件的用户具有写入权限

有人能帮忙吗?下面是函数,但必须删除在目标中打开的文件

Sub Clear_All_Files_And_SubFolders_In_Folder()
    'Delete all files and subfolders
    'Be sure that no file is open in the folder
    Dim FSO As Object
    Dim MyPath As String

    Set FSO = CreateObject("scripting.filesystemobject")

    MyPath = "C:\Users\Ron\Test"  '<< Change

    If Right(MyPath, 1) = "\" Then
        MyPath = Left(MyPath, Len(MyPath) - 1)
    End If

    If FSO.FolderExists(MyPath) = False Then
        MsgBox MyPath & " doesn't exist"
        Exit Sub
    End If

    On Error Resume Next
    'Delete files
    FSO.DeleteFile MyPath & "\*.*", True
    'Delete subfolders
    FSO.DeleteFolder MyPath & "\*.*", True
    On Error GoTo 0
End Sub
Sub-Clear\u文件夹()中的所有文件和子文件夹
'删除所有文件和子文件夹
'确保文件夹中没有打开任何文件
作为对象的Dim FSO
将MyPath设置为字符串
设置FSO=CreateObject(“scripting.filesystemobject”)

MyPath=“C:\Users\Ron\Test”'几个问题:这是多用户路径吗?你想实现什么-类似于Rsync的东西?这是确保文件保持不变的完整性脚本吗?需要额外的澄清来帮助您。首先,您发布的代码不是VBScript。是VBA吗?此外,只要有人打开了文件句柄,就不能替换/覆盖该文件。您可以使用诸如检查打开的句柄之类的工具。不过,我不建议强行关闭打开的手柄。我同意Steve Kline的观点:您希望通过强制替换文件来实现什么?您好,我希望强制关闭目标文件上打开的所有连接,以便源和目标文件不同步。注意:如果目标中有任何文件打开,并且我们试图删除它,则不会发生。当然不会发生。无法打开、删除或修改其他进程具有打开句柄的文件。如何关闭该连接。几个问题:这是多用户路径吗?你想实现什么-类似于Rsync的东西?这是确保文件保持不变的完整性脚本吗?需要额外的澄清来帮助您。首先,您发布的代码不是VBScript。是VBA吗?此外,只要有人打开了文件句柄,就不能替换/覆盖该文件。您可以使用诸如检查打开的句柄之类的工具。不过,我不建议强行关闭打开的手柄。我同意Steve Kline的观点:您希望通过强制替换文件来实现什么?您好,我希望强制关闭目标文件上打开的所有连接,以便源和目标文件不同步。注意:如果目标中有任何文件打开,并且我们试图删除它,则不会发生。当然不会发生。无法打开、删除或修改其他进程具有打开句柄的文件。如何关闭该连接。。