CopyFileAny

By | 2002-06-01

This code allows you to copy any file, including your application to another destination at runtime.
Note: This code has only been tested on Windows 98 using Visual Basic 6.0

Original Author: Mike Owens

Inputs

Input file, output file

Assumptions

Note: This sub is only useful for copying inaccessable files. For regular files, the “FileCopy” sub should be called. An example of use would be to make your exe copy itself somewhere else while running.

Returns

Returns 1 on success, 0 on error.

Code

Public Function CopyFileAny(currentFilename As String, newFilename As String)
Dim a%, buffer%, temp$, fRead&, fSize&, b%
On Error GoTo ErrHan:
a = FreeFile
buffer = 4048
Open currentFilename For Binary Access Read As a
b = FreeFile
Open newFilename For Binary Access Write As b
fSize = FileLen(currentFilename)

While fRead < fSize
DoEvents
If buffer > (fSize - fRead) Then buffer = (fSize - fRead)
temp = Space(buffer)
Get a, , temp
Put b, , temp
fRead = fRead + buffer
Wend
Close b
Close a
CopyFileAny=1
Exit Function
ErrHan:
CopyFileAny=0
End Function

Author: dwirch

Derek Wirch is a seasoned IT professional with an impressive career dating back to 1986. He brings a wealth of knowledge and hands-on experience that is invaluable to those embarking on their journey in the tech industry.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.