Страница: 1 |
Страница: 1 |
Вопрос: Архивирование
Добавлено: 06.01.06 16:51
Автор вопроса: ASiD | ICQ: 259132473
Есть несколько файлов. Как их программно засунуть в архив (rar, zip, arj...)?
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа:
Tamplier
ICQ: 298742928
Вопросов: 58
Ответов: 340
Профиль | | #1
Добавлено: 06.01.06 17:43
Где-то на vbaccelerator.com, vbstreets.ru и vbkiev.ru я видел статьи по архивации. Порыскай на них. Ша просто времени нет, если потом будет поищу, если сам не найдешь.
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 06.01.06 17:57
я писал ф-цию для юзания установленного винрара на компе... всё через коммандную строку... ищи поиском...
Номер ответа: 3
Автор ответа:
ASiD
ICQ: 259132473
Вопросов: 19
Ответов: 23
Профиль | | #3
Добавлено: 06.01.06 18:58
Поиск глючит, поэтому не искал. А запрос такой я тоже пробовал писать. Но он работает только в том случае, если вся строка задана полностью.
Если напишешь, например, shell(stroka$), - работать почему-то не будет.
Номер ответа: 4
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #4
Добавлено: 07.01.06 04:18
' <МОДУЛЬ ДЛЯ C RARom, КОТОРЫЙ УСТАНОВЛЕН В СИСТЕМЕ. >|
' |
' = = = = = = = M A D E B Y H A C K E R = = = = = = |
' icq: 334479038, mail: visualbasic@xaker.ru |
'===========================================================|
'Нужны функции работы с реестром (модуль reg.bas)
'Поддерживает только WinRar, степень сжатия - максимальная
'Возможность установить на архив пароль
Public Sub ArhiveToWinRar(file$, Password$, RarFile$)
'Находим в компе архиватор
Arhive$ = RegGetValue(HKEY_CLASSES_ROOT, ".rar\ShellNew", "FileName"
If Arhive$ <> "" Then ' Если есть на компе архиватор...
Arhive$ = Left(Arhive$, Len(Arhive$) - Len(Spliting(Arhive$, "\")) 'берём его путь
'Смотрим какой архиватор...
If InStr(1, LCase(Arhive$), "winrar", vbTextCompare) > 0 Then 'Если WinRar
'Формируем коммандную строку для архивации
If RarFile$ = "" Then RarFile$ = Replace(file$, Spliting(file$, ".", "rar"
Arhive$ = Chr(34) & Arhive$ & "Rar.exe" & Chr(34) & " a -m5 -inul -ep -ep1 -idp -p" & Password$ & " " & Chr(34) & RarFile$ & Chr(34) & " " & Chr(34) & file$ & Chr(34)
End If
End If
Shell Arhive$, vbHide
End Sub
Public Sub ExtractWinRar(RarFile$, Password$, sDir$)
'Находим в компе архиватор
Arhive$ = RegGetValue(HKEY_CLASSES_ROOT, ".rar\ShellNew", "FileName"
If Arhive$ <> "" Then ' Если есть на компе архиватор...
Arhive$ = Left(Arhive$, Len(Arhive$) - Len(Spliting(Arhive$, "\")) 'берём его путь
'Смотрим какой архиватор...
If InStr(1, LCase(Arhive$), "winrar", vbTextCompare) > 0 Then 'Если WinRar
'Формируем коммандную строку для разархивации
If RarFile$ = "" Then RarFile$ = Replace(file$, Spliting(file$, ".", "rar"
If Password$ = "" Then
Arhive$ = Chr(34) & Arhive$ & "unrar.exe" & Chr(34) & " e -idb -o+ -y" & " " & Chr(34) & RarFile$ & Chr(34) & " " & Chr(34) & sDir$ & Chr(34)
Else
Arhive$ = Chr(34) & Arhive$ & "unrar.exe" & Chr(34) & " e -idb -o+ -y -p" & Password & " " & Chr(34) & RarFile$ & Chr(34) & " " & Chr(34) & sDir$ & Chr(34)
End If
End If
End If
Shell Arhive$, vbHide
End Sub
Номер ответа: 5
Автор ответа:
ASiD
ICQ: 259132473
Вопросов: 19
Ответов: 23
Профиль | | #5
Добавлено: 07.01.06 13:25
Спасибо!
Номер ответа: 6
Автор ответа:
ViktorZ
ICQ: 271202919
Вопросов: 56
Ответов: 837
Профиль | | #6
Добавлено: 07.01.06 15:20
Батничек пишешь. Есть такой файл RAR.exe в корне Винрара. ТАк вот юзаешь его и смотришь какие параметры это делают, далее пишешь батничек и будет он у тя файлы эти архивить как хочешь и сколько. Я так делал для типа Бекапа.