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

Вниз

Вопрос об архивировании! =/   Найти похожие ветки 

 
Officeman   (2003-03-29 21:33) [0]

Доброе время суток!

После (той или иной) выгрузки получаем файл.
Необходимо его упаковать.
Раньше я использовал компонент для Delphi5, и перейдя на delphi6
мои компоненты отказались работать. Ненайду ничего существенного в инете.

Может использавать обычные командный(bat) файлы?
и паковать, например pkzip-ом ?

Что посоветуете ?

Если есть дельный совет пишите. лучше исходником.
или может есть компонент для Delphi6? дайте url

Использование API нежелательно...

Приму любые предложениея, с Уважжением, ОфисМен


 
Leran2002 ©   (2003-03-29 22:00) [1]

Запускай архиватор с параметрами (посмотри инструкцию архиватора) функцией ShellExecute (uses ShellApi)...


 
Officeman   (2003-03-29 22:39) [2]

спасибо!

if ShellExecute(h, "open", "C:\pkzip.exe", nil, nil, SW_SHOW) < 32 then begin
ShowMessage(" Warning !!!")
end;


 
Officeman   (2003-03-29 22:46) [3]

как задать с параметрами через эту функцию?

нужно примерно так

ShellExecute(h, "open", "C:\pkzip.exe basex.db", nil, nil, SW_SHOW);

но так не проходит. как вписать параметры ?...


 
Officeman   (2003-03-29 22:53) [4]

Простите! я идиот!

ShellExecute(h, "open", "C:\pkzip.exe","111" ,"C:\basex.db", SW_SHOW);


 
Officeman   (2003-03-29 23:23) [5]

Тут получается уже что сам с собой веду диалог =)))

ShellExecute(h, "open", "outbox\pkzip.exe","upd" ,"outbox\upd.db", SW_SHOW);

Неправильно работает...архивирует все файлы каталога:
ExtractFilePath(Application.ExeName)

а мне надо только из каталога
ExtractFilePath(Application.ExeName)+"\outbox\upd.db"

уверен на 100% что делаю что-то не так =( а как надо правильно незнаю. вот сижу пробую...


 
Anatoly Podgoretsky ©   (2003-03-29 23:38) [6]

pkzip /?


 
Officeman   (2003-03-29 23:42) [7]

да смотреля. тут дело в обозначании в Shellapi функции.
по правилом это дело должно звучать так

ShellExecute(h, "open", "outbox\pkzip.exe","параметры" ,nil, SW_SHOW);

а параметрами является
"outbox\upd outbox\upd.db"

оното и нехочет восприниматься
я и без каталогов пробовал. просто непонимает и всё!

может есть какойнить компонент . который запускает екзешники...
для версии delphi60





 
Officeman   (2003-03-29 23:46) [8]

вот скатина. а так работает

ShellExecute(h,"open", "outbox\apkzip.exe","C:\123\outbox\upd C:\123\outbox\upd.db",nil, SW_SHOW);

но у меня каталог OUTBOX не на С:
а в каталоге моей программы.

значит надо с использованием
ExtractFilePath(Application.ExeName)

но она грит:
[Error] Unit1.pas(1756): Incompatible types: "String" and "PChar"
чё делать?


 
VEG ©   (2003-03-30 00:26) [9]

ExtractFilePath(PChar(Application.ExeName))


 
Anatoly Podgoretsky ©   (2003-03-30 00:33) [10]

Не надо глюпых советов


 
Officeman   (2003-03-30 00:44) [11]

а если серьезно?! помогите кто знает. я уже 2 часа бьюсь.
с ShellExecute! здесь уже дело принципа. добить надо!


 
Anatoly Podgoretsky ©   (2003-03-30 00:54) [12]

Так ты же не приводишь свою строку вызова, поэтому конкретно сказать нельзя.


 
Officeman   (2003-03-30 01:03) [13]

добил. спасибо всем за содедствие


 
Officeman   (2003-03-30 11:50) [14]

//---Запаковывает
ShellExecute(h,"open",PChar( String("""+ "outbox\pkzip.exe"+""")),PChar( String("""+"outbox\upd"+"""+"""+"outbox\upd.db"+""")),nil, SW_SHOW);

//--- НЕРАБОТАЕТ. нераспаковывает.
ShellExecute(h,"open",PChar( String("""+ "outbox\pkunzip.exe"+""")),PChar( String("""+"-e"+"""+"""+"outbox\upd.zip"+""")),nil, SW_SHOW);

если создать командный файл.то всё рабтает естественно.
а в программе никак. странно неправдали?!


 
Vagrant ©   (2003-04-01 02:21) [15]

Юзай ZipMaster. Это лучшее что я нашел в инете.
http://www.geocities.com/SiliconValley/Network/2114/zipbeta.html


 
Anatoly Podgoretsky ©   (2003-04-01 09:50) [16]

Пути должны быть абсолютные


 
Officeman   (2003-04-02 20:44) [17]

Абсолюбные? всмысле полные?
и будет работать? вроде бы я так пробовал.
побегу проверю! =)

спасибо за внимание


 
panov ©   (2003-04-02 21:35) [18]

Если все-таки остановишься на таком методе архивации, то воспользуйся не pkzip под DOS, а 32-х разрядным pkzip25.



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

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

Наверх




Память: 0.5 MB
Время: 0.014 c
1-44240
tv
2003-04-02 11:38
2003.04.14
Как элементу TListBox-а прикрепить целое число


4-44508
Mantic0re
2003-02-14 07:21
2003.04.14
Как всегда - тривиальные вопросы..


1-44179
Timer
2003-04-03 20:43
2003.04.14
Работа с RichEdit


7-44489
Tema
2003-02-18 08:54
2003.04.14
Помогите реализовать


7-44476
pfar
2003-02-20 12:16
2003.04.14
Как узнать в win2000 под каким пользователем работают?