Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

как пользоваться unRAR.dll для проверки пароля

52K
29 сентября 2009 года
DreamerAG
4 / / 29.09.2009
Напомню, что unrar.dll использую такие проги как SkySorter, RARPB с той же целью.
Но они малофункцианальны. По этому хочу сделать свою прогу.
Прошу всех кто что нибудь про это знает написать.
14
30 сентября 2009 года
Phodopus
3.3K / / 19.06.2008
У тебя в "Похожие темы" - 5 штук кандидатов на прочтение.
52K
03 октября 2009 года
DreamerAG
4 / / 29.09.2009
Цитата: Phodopus
У тебя в "Похожие темы" - 5 штук кандидатов на прочтение.



Я их смотрел. Но они на C++ и Delphi. Я их пока не знаю. По этому и выбрал раздел VB.

Вот что я пока узнал:

Код:
Private Type RARHeaderData
    ArcName As String * 260
    FileName As String * 260
    Flags As Long
End Type
 
Private Type RAROpenArchiveData
    ArcName As String
    OpenMode As Long
    OpenResult As Long
End Type
 
Private Declare Function RAROpenArchive Lib "unrar.dll" (ByRef ArchiveData As RAROpenArchiveData) As Long
Private Declare Function RARCloseArchive Lib "unrar.dll" (ByVal hArcData As Long) As Long
Private Declare Function RARReadHeader Lib "unrar.dll" (ByVal hArcData As Long, ByRef HeaderData As RARHeaderData) As Long
Private Declare Function RARProcessFile Lib "unrar.dll" (ByVal hArcData As Long, ByVal Operation As Long, ByVal DestPath As String, ByVal DestName As String) As Long
Private Declare Sub RARSetPassword Lib "unrar.dll" (ByVal hArcData As Long, ByVal Password As String)
Private Sub Command1_Click()
    Dim uRAR As RAROpenArchiveData
    Dim uHeader As RARHeaderData
    Dim RarFile As String
RarFile = Text1.Text
Password = 0    'пароль по умолчанию (для не шифрованных файлов)
uRAR.ArcName = RarFile  'путь к архиву
uRAR.OpenMode = 1   'режим открытия для извлечения или тестирования
    lHandle = RAROpenArchive(uRAR)      'Open
If uRAR.OpenResult <> 0 Then MsgBox "Ошибка открытия№: " & uRAR.OpenResult & vbNewLine & RarFile

RARSetPassword lHandle, Password 'Задаёт пароль для работы с шифрованным архивом

Do Until RARReadHeader(lHandle, uHeader) <> 0
    sStat = Left(uHeader.FileName, InStr(1, uHeader.FileName, vbNullChar) - 1)
If Sgn("&H" & Mid(Hex(uHeader.Flags), 3) And 2 ^ (3 - 1)) = 1 Then   'если у файла флаг шифрования включен, делаем "*"
crypt = "*"
Else
crypt = ""
End If

Print RARProcessFile(lHandle, 1, "", "") & vbTab & sStat & crypt 'вывод содержимого архива на форму
Loop

RARCloseArchive lHandle 'Close
End Sub

Private Sub Command2_Click()
Form1.Cls
End Sub
52K
03 октября 2009 года
DreamerAG
4 / / 29.09.2009
Хотелось бы узнать про функции:
RARSetProcessDataProc
RARSetCallback
и
RAROpenArchiveEx
RARReadHeaderEx
RARProcessFileW
297
03 октября 2009 года
koodeer
1.2K / / 02.05.2009
Цитата: DreamerAG
Хотелось бы узнать про функции:
RARSetProcessDataProc
RARSetCallback
и
RAROpenArchiveEx
RARReadHeaderEx
RARProcessFileW


Описание всех функций библиотеки unrar.dll содержится в файле unrardll.txt. Нагугливается легко.

52K
04 ноября 2009 года
DreamerAG
4 / / 29.09.2009
Кто нибудь, дайте краткое описание этих функций:
Цитата: DreamerAG

RARSetProcessDataProc
RARSetCallback
и
RAROpenArchiveEx
RARReadHeaderEx
RARProcessFileW

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог