Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: запрос на распаковку в архивный плагин 
Author Message
vx2



PostPosted: Fri Jul 09, 2010 17:24    Post subject: запрос на распаковку в архивный плагин Reply with quote

vb6 (не надо смеяться/плакать). вопрос немного "обратный" разделу но... проблема такая:
рисую програмулину, которая использует один из архивных плагинов тотал коммандера (в тотале плагин работает на ура).
архив читать научился, все нормально, список файлов выдает. проблема при попытке распаковать файлы. код:
Code:
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

полный путь до конечного файла существует. сама функция ProcessFile выдает либо 16 ошибку (невозможно создать файл), либо файл распаковывает, но в папку проекта с корявым именем без расширения.
что именно и в каком виде должно отдаваться в DestName для нормальной работы?
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group