Страница: 1 |
Страница: 1 |
Вопрос: Знатокам VB и RAR
Добавлено: 31.08.05 15:06
Автор вопроса: DR*FRe$H | ICQ: 3442442
Очередной вопрос в следующем:
1) Есть файл FILE.SCS. При нажатии на кнопку "открыть" в моем проекте нужно, чтобы моя прога переименовывала этот файл в файл FILE.RAR.
2) Затем извлекала все файлы из получившегося архива в какую-то папку (можно временную).
3) Затем в мой проект загружала из архива (распакованного) файл TEXT.COL (текст), а также 2 картинки из этого же архива (например имена PICTURE1.JPG и PICTURE2.JPG).
4) И если я выберу другие картинки нужно, чтобы они помещались в папку, в которую распакован архив с именами PICTURE1.JPG и PICTURE2.JPG соответственно с заменой существующих.
5) Потом после изменения при нажатии на кнопку "Сохранить" в моем проекте нужно, чтобы данные файлы не архивировались заново, а только обновлялись в существующем архиве FILE.RAR,
6) а потом данный архив переименовывался обратно в файл FILE.SCS.
Надеюсь не сильно замудрено :))
Кто что знает (хотя бы об одном из шагов), напишите, pls. :))
Желательно, чтобы команды архивирования-разархивирования производились при помощи файла RAR.EXE в папке с прогой (т.е. без необходимости установки WinRAR)
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
AndreyMp
ICQ: 237822510
Вопросов: 28
Ответов: 1182
Профиль | | #1
Добавлено: 31.08.05 16:08
Ты так расписал план действий, что должен и сам справиться. Или ты хочешь чтоб ТВОЙ проект написали за тебя?
Номер ответа: 2
Автор ответа:
Barsik
Разработчик Offline Client
ICQ: 343368641
Вопросов: 17
Ответов: 686
Web-сайт:
Профиль | | #2
Добавлено: 31.08.05 16:08
юзай библы для архивирования и разархивирования, таких в сети навалом!
а все что ты тут написал тебе никто за интерес делать не будет...
а на заказ пжалуйста )
Номер ответа: 3
Автор ответа:
DR*FRe$H
ICQ: 3442442
Вопросов: 9
Ответов: 7
Профиль | | #3
Добавлено: 31.08.05 16:17
ОК. Допустим я сделаю (хотя это будет сложно для меня), но насчет 5 шага я не уверен.
Номер ответа: 4
Автор ответа:
ionux
ICQ: 327420631
Вопросов: 10
Ответов: 41
Web-сайт:
Профиль | | #4
Добавлено: 01.09.05 12:20
5 шаг:
Напиши программу архивирования, запихни ее в папку со своей "заумной" программой и впиши в код программы вызов своего архиватора:
Shell App.Path "/Rar.exe" ...
И WinRar устанавливать не надо и код своей программы сократишь )
Все!
Номер ответа: 5
Автор ответа:
ionux
ICQ: 327420631
Вопросов: 10
Ответов: 41
Web-сайт:
Профиль | | #5
Добавлено: 01.09.05 12:22
... +
после нажатия Сохранить, твоя программа Rar.exe
(твой архиватор) заносит изменения в файл архива и затем удаляет временную папку,
этот шаг очень легкий, что непонятного.
Будут проблемсы, пиши:
io.hacker@mail.ru
Номер ответа: 6
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #6
Добавлено: 01.09.05 21:27
а я писал когда-то для себя, токо архивирование...
'===========================================================|
' <МОДУЛЬ ДЛЯ АРХИВИРОВАНИЯ ФАЙЛА ИЛИ ПАПКИ АРХИВАТОРОМ, >|
' <КОТОРЫЙ УСТАНОВЛЕН В СИСТЕМЕ. >|
' |
' = = = = = = = M A D E B Y H A C K E R = = = = = = |
' icq: 826747, mail: visualbasic@xaker.ru |
'===========================================================|
'Нужны функции работы с реестром (модуль reg.bas)
'Поддерживает только WinRar, степень сжатия - максимальная
'Возможность установить на архив пароль
Private Arhive$
Private Sub Load(File$, Password$, RarFile$)
'Находим в компе архиватор
Arhive$ = RegGetValue(HKEY_CLASSES_ROOT, ".zip\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
End Sub
Public Sub ArhiveToWinRar(File$, Password$, RarFile$)
Load File$, Password$, RarFile$
Shell Arhive$, vbHide
End Sub
планировал сделать поддержку для нескольких архиватором, но руки с ногами не дошли Кстати, разархивировать аналогично... а вообще rar.exe /? ...
Насчёт 5-ого, для рара ключик есть специальный, почитай, должен найти... А за тебя действительно оно никому не надо.
Номер ответа: 7
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #7
Добавлено: 02.09.05 16:03
Кстати, а нафиг нужны первый и шестой шаги?
Номер ответа: 8
Автор ответа:
DR*FRe$H
ICQ: 3442442
Вопросов: 9
Ответов: 7
Профиль | | #8
Добавлено: 03.09.05 08:44
2 LamerOnLine
Потому-что есть архив, только расширение у него *.scs. Но я уже этот вопрос решил.
СПАСИБО ВСЕМ, КТО ХОТЬ КАК-ТО ПОМОГ!!!