Как использовать встроенный ресурс для копирования файла, даже не делая локальную копию? - PullRequest
1 голос
/ 19 февраля 2012

Если у вас есть встроенный ресурс в вашем проекте VB6, который содержит двоичный файл, какой код приведет к тому, что этот файл будет скопирован в другое место, даже не создавая копию файла в локальной системе?

Я уже делал что-то подобное в .NET, но боюсь, что это невозможно в VB6.

1 Ответ

0 голосов
/ 19 февраля 2012

С http://support.microsoft.com/kb/q194409/:

 Public Function SaveResItemToDisk( _
                ByVal iResourceNum As Integer, _
                ByVal sResourceType As String, _
                ByVal sDestFileName As String _
                ) As Long
        '=============================================
        'Saves a resource item to disk

    'Returns 0 on success, error number on failure
    '=============================================

    'Example Call:
    ' iRetVal = SaveResItemToDisk(101, "CUSTOM", "C:\myImage.gif")

    Dim bytResourceData()   As Byte
    Dim iFileNumOut         As Integer

    On Error GoTo SaveResItemToDisk_err

    'Retrieve the resource contents (data) into a byte array
    bytResourceData = LoadResData(iResourceNum, sResourceType)

    'Get Free File Handle
    iFileNumOut = FreeFile

    'Open the output file
    Open sDestFileName For Binary Access Write As #iFileNumOut

        'Write the resource to the file
        Put #iFileNumOut, , bytResourceData

    'Close the file
    Close #iFileNumOut

    'Return 0 for success
    SaveResItemToDisk = 0

    Exit Function
SaveResItemToDisk_err:
    'Return error number
    SaveResItemToDisk = Err.Number
End Function
...