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

Вниз

Резервная копия   Найти похожие ветки 

 
grifon_nn   (2003-06-09 17:43) [0]

Подскажите, как лучше сделать резервную копию БД. Пока используется тупое сжатие с помощью WinRar.


 
Соловьев   (2003-06-09 17:55) [1]

для парадокса вполне нормально.


 
grifon_nn   (2003-06-09 18:34) [2]

Спасибо


 
Pat   (2003-06-09 20:11) [3]

Можно добавить упаковку через dbiDoRestructure


 
grifon_nn   (2003-06-11 11:32) [4]

>Pat
а что это даст. Можно поподробнее.

И ещё вопрос: когда я делаю резервную копию (либо создаю, либо восстанавливаю), никаких сообщений об ошибке программа не выдает. Т.е. просто запускается WinRar и сам отрабатывает. Теперь сам вопрос: как сделать, чтобы прога отлавливала завершение работы архиватора и в случае чего выдавала сообщение.

WinRar запускается следующей строкой:

env := "Winrar.exe e -c- -cfg- -o+ "+"reserve\" + filename + ".rar DataBase"
if not CreateProcess(nil,PChar(env),nil,nil,false,0,nil,nil,si,pi) then
ShowMessage("Ошибка открытия архива")
else
begin
WaitForSingleObject(pi.hProcess,INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
end;


При этом сообщение "Ошибка открытия архива не выдается ни при каких обстоятельствах", может я где в параметрах напутал...


 
KoluChi   (2003-06-11 11:44) [5]

Я использую такую функцию, обрабатывай ErrorCode
//------------------------------------------------------------------------------
function ProgramExecCommonErrorCode(const ExecLine: String; const WindowState: Integer; ErrorCode: PInteger = nil; ShowError: Boolean = false): Boolean;
var
PrInfo: PROCESS_INFORMATION;
StInfo: STARTUPINFO;
ExitCode: DWord;
begin
Result := false;
ZeroMemory(@StInfo, sizeof(StInfo));
with StInfo do
begin
cb := SizeOf(StInfo);
wShowWindow := WindowState;
dwFlags := STARTF_USESHOWWINDOW;
end;
if not CreateProcess(nil, PChar(ExecLine), nil, nil, False, CREATE_NEW_PROCESS_GROUP, nil, nil, StInfo, PrInfo) then Exit;
WaitForSingleObject(PrInfo.hProcess, INFINITE);
GetExitCodeProcess(PrInfo.hProcess, ExitCode);
CloseHandle(PrInfo.hProcess);
CloseHandle(PrInfo.hThread);
if Assigned(ErrorCode) then ErrorCode^ := ExitCode;
Result := true;
end;
//------------------------------------------------------------------------------



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

Форум: "Базы";
Текущий архив: 2003.07.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
8-7560
CrowD
2003-03-20 11:36
2003.07.03
Маштабируемость?


14-7698
vidiv
2003-06-16 10:31
2003.07.03
Где лучше хранить данные в INI или во многих TXT.


7-7744
demonyator
2003-04-22 22:28
2003.07.03
Как программно получить/изменить Mouse Sensetivity?


14-7619
ferrik
2003-06-18 21:06
2003.07.03
Hard Disk Drive


14-7595
Zergling
2003-06-17 06:47
2003.07.03
Русский набор символов в Rave Report





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский