Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Заархивировать нужно / 5 сообщений из 5, страница 1 из 1
13.04.2007, 15:33
    #34459727
pro100MaD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заархивировать нужно
Помогите плз, как мне заархивировать папку из Builder'a ???
Тока плз поподробнее....
то что смотри WinExec или ShellExecute я знаю, но с какими параметрами мне его запускать ???заранее благодарен
...
Рейтинг: 0 / 0
13.04.2007, 15:39
    #34459766
sashka304
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заархивировать нужно
http://]http://www.componentace.com/delphi_components.htm
...
Рейтинг: 0 / 0
13.04.2007, 15:42
    #34459778
pro100MaD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заархивировать нужно
ой....зпасибо что не прошел мимо....
но я в английском, как свинья в апельсинах (((
...
Рейтинг: 0 / 0
14.04.2007, 15:35
    #34461147
muk07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заархивировать нужно
Как уже верно сказали, компоненту зовут TZipForge.
В кач-ве примера - текст, который сворачивает БД MSSQL. Компоненту зовут zip1
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
void __fastcall TfrmArhiv::btnCreateArhClick(TObject *Sender){
int nFile= 0 ,i;
AnsiString DBFile[MAXDBFILE];
AnsiString s;
TDateTime ToDay=ServerDateTime();

if(access(edtArhName->Text.Trim().c_str(), 0 )== 0 ){
    s="Файл ";
    s=s+edtArhName->Text.Trim()+" уже существует. Переписать?";
    if( 0 !=Msg(QUESTION,"Да|Нет",s.c_str())){
        return;
    }
    unlink(edtArhName->Text.Trim().c_str());
}

// спросим файлы БД
TStoredProc *st=CreateStProc(db,"sp_helpfile", 0 );
st->Open();
for(i= 0 ,st->First();!st->Eof;st->Next(),i++){
    DBFile[i]=st->FieldByName("filename")->AsString;
    nFile++;
}
delete st;

// остановим SQL server
db->Close();
s=ExePath()+"stopserver.bat";
ShellExecute( 0 ,"open",s.c_str(),"",ExePath().c_str(), 1 );
Sleep( 10000 );

zip1->FileName=edtArhName->Text;
zip1->OpenArchive();

lblFile->Visible=true;
lblAll->Visible=true;
pbFile->Visible=true;
pbAll->Visible=true;
Application->ProcessMessages();

for(i= 0 ;i<nFile;i++){
    TFileStream *fs=new TFileStream(DBFile[i],fmOpenRead);
    lblFile->Caption=DBFile[i];
    Application->ProcessMessages();
    zip1->AddFromStream(DBFile[i],fs,false, 0 , 0 ,faArchive,ToDay);
    delete fs;
}
zip1->CloseArchive();

lblFile->Visible=false;
lblAll->Visible=false;
pbFile->Visible=false;
pbAll->Visible=false;
Application->ProcessMessages();

// запустим SQL Server
s=ExePath()+"startserver.bat";
ShellExecute( 0 ,"open",s.c_str(),"",ExePath().c_str(), 1 );
Sleep( 10000 );
db->Open();
ParentForm->queStreets->Open();
ParentForm->queHouses->Open();
ParentForm->queFlats->Open();
}

...
Рейтинг: 0 / 0
17.04.2007, 10:42
    #34465517
vanoman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заархивировать нужно
Можно набрать в www.ya.ru магическое слово "zlib"
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Заархивировать нужно / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]