Function CopyFieldToFile(rst As Adodb.Recordset, fd As String, strFileName As String) As String
 Dim FileNum As Integer
 Dim Buffer() As Byte
 Dim BytesNeeded As Long
 Dim Buffers As Long
 Dim Remainder As Long
 Dim Offset As Long
 Dim R As Integer
 Dim i As Long
 Dim ChunkSize As Long ChunkSize = 65536
 BytesNeeded = rst(fd).ActualSize
    If BytesNeeded > 0 Then
       ' Calculate the number of buffers needed to copy
        Buffers = BytesNeeded \ ChunkSize
        Remainder = BytesNeeded Mod ChunkSize
        ' Get a unique, temporary filename:        If Dir(strFileName) <> "" Then
            Kill strFileName
        End If
        FileNum = FreeFile
        Open strFileName For Binary As #FileNum
        frmP1.Show
        frmP1.Timer1.Interval = 100
        For i = 0 To Buffers - 1
            DoEvents
           ReDim Buffer(ChunkSize)
           Buffer = rst(fd).GetChunk(ChunkSize)
           Put #FileNum, , Buffer()
           Offset = Offset + ChunkSize
        Next        
        ReDim Buffer(Remainder)
        Buffer = rst(fd).GetChunk(Remainder)
        Put #FileNum, , Buffer()
        Close #FileNum
        frmP1.Timer1.Interval = 0
        Unload frmP1
    End If
    CopyFieldToFile = strFileName
End Function
这段代码是读的,往里面写的类似 使用AppendChunk