要是不用FSO,要怎么复制文件呢?

解决方案 »

  1.   

    FileCopy 语句示例
    本示例使用 FileCopy 语句来复制文件。示例中假设 SRCFILE 为含有数据的文件。Dim SourceFile, DestinationFile
    SourceFile = "SRCFILE"   ' 指定源文件名。
    DestinationFile = "DESTFILE"   ' 指定目的文件名。
    FileCopy SourceFile, DestinationFile   ' 将源文件的内容复制到目的文件中。
      

  2.   

    FileCopy 语句
          复制一个文件。语法FileCopy source, destinationFileCopy 语句的语法含有以下这些命名参数:部分 描述 
    source 必要参数。字符串表达式,用来表示要被复制的文件名。source 可以包含目录或文件夹、以及驱动器。 
    destination 必要参数。字符串表达式,用来指定要复制的目地文件名。destination 可以包含目录或文件夹、以及驱动器。 
    说明如果想要对一个已打开的文件使用 FileCopy 语句,则会产生错误。
      

  3.   

    当然除用FILECOPY外,最呆的方法还可以用open语句来实现。
      

  4.   

    还可以使用SHFileOperation,功能比较强大Private Type SHFILEOPSTRUCT
            hwnd As Long
            wFunc As Long       '对文件的操作指令
            pFrom As String     '源文件或路径
            pTo As String       '目的文件或路径
            fFlags As Integer   '操作标志
            fAnyOperationsAborted As Long
            hNameMappings As Long
            lpszProgressTitle As String
    End TypePrivate Declare Function SHFileOperation Lib _
            "shell32" _
            (lpFileOp As SHFILEOPSTRUCT) As LongConst FO_COPY = &H2
    Const FO_DELETE = &H3
    Const FO_MOVE = &H1
    Const FO_RENAME = &H4
    Const FOF_ALLOWUNDO = &H40
    Const FOF_NOCONFIRMATION = &H10Private Sub Command1_Click()
        Dim xFile As SHFILEOPSTRUCT
            
        '复制
        xFile.pFrom = "c:\bbb\*.*"
        xFile.pTo = "c:\aaa"
        xFile.fFlags = FOF_NOCONFIRMATION
        xFile.wFunc = FO_COPY
        xFile.hwnd = Me.hwnd
        If SHFileOperation(xFile) Then
        End If
        
    End SubPrivate Sub Command2_Click()
        Dim xFile As SHFILEOPSTRUCT
        
        '删除
        xFile.pFrom = "c:\bmp\*.*"
        'xFile.pTo = "c:\"
        xFile.wFunc = FO_DELETE
        xFile.hwnd = Me.hwnd
        '将fFlags设置为FOF_ALLOWUNDO
        '允许被删除的文件放置到回收站中
        xFile.fFlags = FOF_ALLOWUNDO
        If SHFileOperation(xFile) Then
            Debug.Print "Success"
        End If
    End SubPrivate Sub Command3_Click()
    Dim xFile As SHFILEOPSTRUCT
    '更名
    xFile.pFrom = "c:\123.doc"
    xFile.pTo = "c:\456.doc"
    xFile.wFunc = FO_RENAME
    xFile.hwnd = Me.hwnd
    If SHFileOperation(xFile) Then
    End If
    End SubPrivate Sub Command4_Click()
    '移动
    xFile.pFrom = "c:\bmp\eee.bmp"
    xFile.pTo = "c:\"
    xFile.wFunc = FO_MOVE
    xFile.hwnd = Me.hwnd
    If SHFileOperation(xFile) Then
    End If
    End Sub