запрос на распаковку в архивный плагин
Добавлено: Пт июл 09, 2010 17:24
vb6 (не надо смеяться/плакать). вопрос немного "обратный" разделу но... проблема такая:
рисую програмулину, которая использует один из архивных плагинов тотал коммандера (в тотале плагин работает на ура).
архив читать научился, все нормально, список файлов выдает. проблема при попытке распаковать файлы. код:
полный путь до конечного файла существует. сама функция ProcessFile выдает либо 16 ошибку (невозможно создать файл), либо файл распаковывает, но в папку проекта с корявым именем без расширения.
что именно и в каком виде должно отдаваться в DestName для нормальной работы?
рисую програмулину, которая использует один из архивных плагинов тотал коммандера (в тотале плагин работает на ура).
архив читать научился, все нормально, список файлов выдает. проблема при попытке распаковать файлы. код:
Код: Выделить всё
Public ArcName As String ' задается при первом открытии архива в виде полного пути с именем до него
Function ExtractDir(ByVal eDir As String, ByVal dDir As String) As Boolean
'dDir="C:\папка\папка"
Dim opnArcData As TOpenArchiveData
Dim hArcData As Long
Dim HeaderData As tHeaderData
opnArcData.ArcName = ArcName
opnArcData.OpenMode = PK_OM_EXTRACT
hArcData = OpenArchive(opnArcData)
Do Until ReadHeader(hArcData, HeaderData) = E_END_ARCHIVE
If [надо-ли файл распаковать] Then
ProcessFile hArcData, PK_EXTRACT, vbNullString, dDir & "\" & HeaderData.FileName
'четвертым параметром (DestName) пробовал просто "HeaderData.FileName" и еще так:
'dDir & "\" & Left(HeaderData.FileName, InStr(1, HeaderData.FileName, Chr(0)) - 1)
Else
ProcessFile hArcData, PK_SKIP, vbNullString, vbNullString
End If
Loop
CloseArchive hArcData
End Function
что именно и в каком виде должно отдаваться в DestName для нормальной работы?