Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2014.02.09;
Скачать: [xml.tar.bz2];

Вниз

КАк упаковать раром папку?   Найти похожие ветки 

 
TStas ©   (2013-04-01 19:22) [0]

Из интернета скачал всякие примеры, но ничего не работает. Мне надо просто упаковать папку с файлами с настройками по умолчанию. Это делает менюшка "Дадавить в архив имя_ПАПКИ"


 
antonn ©   (2013-04-01 19:35) [1]

он же запуск с параметрами поддерживает


 
TStas ©   (2013-04-01 19:42) [2]

Код можешь написать? Ну никак не получяается.


 
clickmaker ©   (2013-04-01 19:45) [3]

у винрара есть хелп. А в нем - раздел "Режим командной строки"


 
TStas ©   (2013-04-01 20:00) [4]

Ну? А - добавить в архив. А как папку-то добавить? Там не написано. Какие-то ключ1, ключ2 и прочая хрень.
Напишите, если естиь код. Ну уже несколько часов потратил.


 
TStas ©   (2013-04-01 20:02) [5]

Было бы просто, в интернете находилось бы. А то там куча примеров, но не один не работает. В справке примеров тоже нет.


 
brother ©   (2013-04-01 20:03) [6]

ключ- не хрень!


 
TStas ©   (2013-04-01 20:12) [7]

Мне нужен просто пример, как это сделать. Программно раром мне вряд ли придется когда-то пользоваться. Если это уже второй заход, то проще через систему соообщений. Если знаете, то ответьте, а то что в раре есть справка, я как-то и сам догадался.


 
brother ©   (2013-04-01 20:25) [8]

http://www.sql.ru/forum/actualthread.aspx?tid=908668


 
clickmaker ©   (2013-04-01 20:33) [9]

> Какие-то ключ1, ключ2 и прочая хрень

действительно, для кого всю эту хрень пишут? Писали бы сразу код для Стаса


 
Inovet ©   (2013-04-01 21:07) [10]

> [9] clickmaker ©   (01.04.13 20:33)
> код для Стаса

rar a МояАрхива c:\МояМамка\МояПапка
rar a -r МояАрхива c:\МояМамка\МояПапка


 
TStas ©   (2013-04-01 22:00) [11]

Приведенные примеры не работают, а через посыл клавиш все работает отлично.


 
clickmaker ©   (2013-04-01 22:47) [12]

> через посыл клавиш все работает отлично

ну, станешь гуру в посыле клавиш


 
TStas ©   (2013-04-01 23:39) [13]

ПРосто вопрос явно не простой, был бы простой, интернет бы выплевывал ответ сразу. РАр программа очень мощная, а задача - упаковать папку с гововыми документами и послать ее по почте. Раньше делал руками это, но решил что надо, чтобы все делала сама. Понятно, что в моём случае это не лучший выход, но я несколько раз пробовал, искал, и ничего не выходило. Вы ведь и сами ответ не знаете.
Розыч на форуме умную вещь сказал: пиши, как тебе удобно, если все работает, то и трогать не надо.
Я читал не только справну оконного рара, но и консольного. Нифига не понял. Там ограмная куча параметров и во всех надо разбираться. А 90% отлично делают дельфи. Например, удаляют после упаковки, перемещают, куда надо, ждут и т. д.
А дождаться конца упаковки очень просто, без WaitForSingleObject. Текст окна упаковки извествен. КАк только перестанет Hendl на это окно находиться, значит упаковка закончена.
То, что у других компов менюшки другие, ну и что? Если мне отправлять по почте, то я могу это делать только из дома, в противном случае документы просто печатаются, зачем их вообще отправлять?
Хорошо бы уметь раром пользоваться, только вот где взять кноиги и время?


 
clickmaker ©   (2013-04-02 00:21) [14]

> Вы ведь и сами ответ не знаете

двумя постами выше дали практически готовый ответ


 
Германн ©   (2013-04-02 01:41) [15]


> TStas ©   (01.04.13 23:39) [13]
>
> ПРосто вопрос явно не простой, был бы простой, интернет
> бы выплевывал ответ сразу.

Вопрос простой как "2+2" в арифметике. И ответ на него
> Inovet ©   (01.04.13 21:07) [10]

уже дал. И полностью рабочий. Чем сей ответ не устроил? Твоим незнанием работы с командной строкой? Так учись с ней работать.
Иначе
> clickmaker ©   (01.04.13 20:33) [9]
>
> > Какие-то ключ1, ключ2 и прочая хрень
>
> действительно, для кого всю эту хрень пишут? Писали бы сразу
> код для Стаса


 
Германн ©   (2013-04-02 01:43) [16]

Первый в моей практике случай, когда весьма подробная справка на родном языке автора вопроса ему не помогла :)


 
KilkennyCat ©   (2013-04-02 01:50) [17]


> А 90% отлично делают дельфи

ты же программист. допиши оставшиеся 10, заодно платить не придется.


> Розыч на форуме умную вещь сказал

дык ведь и не к идиотам обращался.


 
Плохиш ©   (2013-04-02 10:53) [18]


> ты же программист.

Долго смеялся... Это такой прикол 2 апреля :-)


 
TStas ©   (2013-04-02 12:00) [19]

Это где-то на первом часу мучений с раром стало прообоваться
procedure TForm1.Button1Click(Sender: TObject);
Const
 AName = "Тестовая";
var
 Src, Dest, S: String;
begin
 Src := ExtractFilePath(ParamStr(0));
 Dest := Src;
 Src := Src + AName + "\"; //Хоть со слешом, хоть без слеша
 Dest := Dest + AName + ".rar";
 if DirectoryExists(Src) then ShowMessage("DirectoryExists(Src) = True") else
   ShowMessage("DirectoryExists(Src) = False");// вывод переменной DirectoryExists(Src)
 //rar a МояАрхива c:\МояМамка\МояПапка
 S := "rar a -r "" + Dest + "" "" + Src + """;
 WinExec(PChar(S), SW_SHOW); //Не работает

 S := "rar a "" + Dest + "" "" + Src + """;
 WinExec(PChar(S), SW_SHOW); //Не работает
end;


 
Rouse_ ©   (2013-04-02 12:27) [20]

ну еще бы работало.
Ты просто открой консоль и попробуй там выполнить свою команду: "rar a МояАрхива c:\МояМамка\МояПапка", заработает?


 
clickmaker ©   (2013-04-02 12:28) [21]

> WinExec(PChar(S), SW_SHOW); //Не работает

а rar.exe живет в папке, которая прописана в переменной окружения PATH?
И еще, так для справки, WinExec возвращает результат, который можно проверить


 
antonn ©   (2013-04-02 13:21) [22]


> Код можешь написать? Ну никак не получяается.

я из пхп примерно так делаю:
exec("rar.exe a -r -ep1 -mt6 "путь и имя получаемого архива" "папка\*.*" ");


 
brother ©   (2013-04-02 13:25) [23]

О_о рар консольный?


 
clickmaker ©   (2013-04-02 13:29) [24]

дык, rar.exe всегда консольный. Гуевый называется WinRar


 
antonn ©   (2013-04-02 13:31) [25]


> О_о рар консольный?

версия 4.20, что тебя удивляет?


 
brother ©   (2013-04-02 13:45) [26]

у меня консольный ассоциируется с ДОС)


 
antonn ©   (2013-04-02 14:54) [27]

Фигня, у меня до сих пор где-то еще работает arj.exe и tar :)

Да и не обязательно прям "консольный" - с поддержкой параметров запуска, вывода он может не делать (а это вроде как основное для консольного приложения).


 
Inovet ©   (2013-04-02 15:39) [28]

> [11] TStas ©   (01.04.13 22:00)
> Приведенные примеры не работают

Всё работает. Мне лично, когда разово надо вручную запаковать, удобнее перейти в нужную папку и набрать
rar a MyArchive
или
rar a -r MyArchive


 
Inovet ©   (2013-04-02 15:41) [29]

И вообще первое апреля уже кончился.


 
Inovet ©   (2013-04-02 16:04) [30]

> [26] brother ©   (02.04.13 13:45)
> у меня консольный ассоциируется с ДОС)

У меня с консолью. Что я думаю не так? Кстати, гуевый точе можно вызывать с параметрами, никогда не пользовался этой возможностью, но Рошалью респект.


 
Игорь Шевченко ©   (2013-04-02 16:13) [31]

правильный rar называется zip


 
Jeer ©   (2013-04-02 16:19) [32]

>правильный rar называется zip

Точно - новый метод шифрования :)


 
брат Птибурдукова   (2013-04-02 16:29) [33]


> Кстати, гуевый точе можно вызывать с параметрами, никогда
> не пользовался этой возможностью
я пользовался. консольный unrar не умеет распаковывать не-раровские архивы, графический -- умеет. я этим нагло пользовался.


 
Inovet ©   (2013-04-02 17:03) [34]

> [31] Игорь Шевченко ©   (02.04.13 16:13)
> правильный rar называется zip

Или 7z


 
TStas ©   (2013-04-03 15:21) [35]

Edit1.Text := "rar a -r""+ " "" + DocFolder + DOC_FOLDER_NAME +  ".rar" ""  + DocFolder + """;
 WinExec(PChar(Edit1.Text), SW_SHOW);
Нихрена не наботает. И еще ShellExecute и по-всякому. Даже консоль не вылезает


 
Inovet ©   (2013-04-03 16:06) [36]

> [35] TStas ©   (03.04.13 15:21)
> не наботает

ShowMessage(Edit1.Text);
в нём Ctrl+C
В консоль умеешь вставлять из буфера обмена? Вставь и нажми Enter.


 
clickmaker ©   (2013-04-03 16:08) [37]

да бесполезно всё... человек надел пробковый шлем


 
TStas ©   (2013-04-03 16:22) [38]

>clickmaker //Самый умный? Ну не работал я с раром. Ну не получается. Прямого ответа так никто не написал. Не работает. Через сообщения все чудно работает. Хамить-то зачеем? Я тебе хоть одно слово плохо сказал?


 
Inovet ©   (2013-04-03 16:28) [39]

> [38] TStas ©   (03.04.13 16:22)
> Прямого ответа так никто не написал

Так бы и сказал - код давай.


 
Inovet ©   (2013-04-03 16:29) [40]

> [38] TStas ©   (03.04.13 16:22)

И хамства я не вижу.


 
Inovet ©   (2013-04-03 16:38) [41]

> [35] TStas ©   (03.04.13 15:21)
> WinExec

Note  This function is provided only for compatibility with 16-bit Windows. Applications should use the CreateProcess function.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms687393%28v=vs.85%29.aspx


 
Inovet ©   (2013-04-03 16:38) [42]

> [41] Inovet ©   (03.04.13 16:38)

Это к слову.


 
Германн ©   (2013-04-03 17:59) [43]


> Нихрена не наботает. И еще ShellExecute и по-всякому. Даже
> консоль не вылезает
>

А вызывать rar с полным путем к нему не догадался?


 
antonn ©   (2013-04-03 18:10) [44]


> TStas ©   (03.04.13 15:21) [35]

используй shellexecute() с отдельным параметром пути к рару и отдельным параметром под параметры запуска. и еще у тебя кавычка двойная к -r прилипла


 
TStas ©   (2013-04-03 19:30) [45]

Удалено модератором


 
имя   (2013-04-04 01:24) [46]

Удалено модератором


 
brother ©   (2013-04-04 07:41) [47]

Удалено модератором



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2014.02.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.004 c
1-1321596096
brother
2011-11-18 10:01
2014.02.09
TIniStream реальность?


15-1377522246
Псевдо-Дельфи-Мастер.
2013-08-26 17:04
2014.02.09
Книги по STALKER у.


2-1364921642
guest
2013-04-02 20:54
2014.02.09
как получить кодировку...


1-1321429584
Deltas
2011-11-16 11:46
2014.02.09
OleContainer и Excel


11-1249636129
Dy1
2009-08-07 13:08
2014.02.09
OnPaint





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский