Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.10;
Скачать: CL | DM;

Вниз

Не получается Заархивировать файл из Проги   Найти похожие ветки 

 
Artemkin ©   (2002-10-02 08:39) [0]

Помогите - я не знаю как заархивировать файл.
В программе это требуется.
Может компонента какая-нить, или внешний архиватор....плз


 
Anatolyk   (2002-10-02 08:49) [1]

я пользовался самым простым, на мой взгляд методом -
установил LMDTools5se для D5 (то же можно и для D6);
в них есть компонент LMDStarter на закладке LMD Shell;
написал следующее:
StatusBar1.SimpleText := "Создаю архив";
LMDStarter1.Command := GetEnvironmentVariable("COMSPEC"); //надо выполнять через command.com (в Win9*) или Cmd.EXE (в NT)
LMDStarter1.Parameters := "/C " + "ARJ.EXE M C:\ArchiveName " + "SomeDirectory\*.* -R";
LMDStarter1.Wait := True; //Ожидать окончания выполнения
LMDStarter1.StartOption := (soSW_HIDE);//не показывать консоль
LMDStarter1.Execute;


 
andrey_pst ©   (2002-10-02 08:51) [2]

Можно компоненты найти, можно внешним архиватором, например Rar.exe:
var
PChTmp : PChar;
si : STARTUPINFO;
pi : PROCESS_INFORMATION;
ExitCodes : DWORD; // коды возврата архиватора
...
// свернем контракт в архив RAR:
PChTmp := StrNew(PChar(ExtractShortPathName(GetCurrentDir) + "\rar.exe a " + fdPath + "fd.rar " + fdPath "*.xls -df -ep -m5 -ri15:0 -s -rr"));
ZeroMemory(@si, sizeof(si));
si.cb := SizeOf(si);
// запустим Rar.exe
if not CreateProcess( nil, PChTmp, nil, nil, False, 0, nil, nil, si, pi ) then
begin
MessageDlg("ОШИБКА !!!." + #13 + "Не могу запустить архиватор.", mtError, [mbOK], 0);
end
else
begin
WaitForSingleObject(pi.hProcess, INFINITE); // ждем окончания процесса
GetExitCodeProcess(pi.hProcess, ExitCodes); // получаем код возврата
// посмотрим что вернулось:
case ExitCodes of
255 : MessageDlg("ОШИБКА АРХИВАТОРА № 255 !!!." + #13 + "Процесс архивации прерван пользователем.", mtError, [mbOK], 0);
...
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
StrDispose(PChTmp);


 
Artemkin ©   (2002-10-02 09:09) [3]


> andrey_pst © (02.10.02 08:51)
> Можно компоненты найти, можно внешним архиватором, например
> Rar.exe:

извините, а где вставлять путь к архивируемому файлу?
И если можно, подскажите пару компонент по архивации, а я уже поищу??



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

Текущий архив: 2002.10.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
7-32020
VEG
2002-07-20 19:15
2002.10.10
Работа с LPT портом.


14-32003
Malder
2002-09-15 00:27
2002.10.10
Кто-нибудь занимался сетями X25. Например SITA Network ?


1-31842
Mazenrat
2002-09-28 15:38
2002.10.10
Читаем значение реестра с помощью RegOpenKeyEx.


4-32100
Nikolab
2002-08-28 11:38
2002.10.10
Dlia nekotorie vk_xxx TCheckBox.OnKeyDown ne vuizivaetsia


1-31848
MC TOL
2002-09-27 16:33
2002.10.10
Direct Oracle Access for Delphi 7?!