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

Вниз

В чем ошибка?   Найти похожие ветки 

 
DSKalugin ©   (2004-06-18 12:20) [0]

По нажатию на эту кнопку должна закрыться БД, сархивироваться РАРом и открыться. Архиватор запускается, но выдает ошибку "Нет файлов для добавления". Хотя в командной строке виндовс все работает. В чем ошибка?

procedure TfmECatalog.bt_ArcECatClick(Sender: TObject);
var RARName, cmdLine, exe: AnsiString;
 D: TDate;
 Year, Month, Day: Word;
 cc:Boolean;
 StartupInfo: TStartupInfo;
 ProcessInfo: TProcessInformation;
 SecAtrrs: TSecurityAttributes;
begin
 D:=Date;
 DecodeDate(D, Year, Month, Day);
 RARName:="ec_"+IntToStr(Day)+IntToStr(Month)+IntToStr(Year)+".rar";
 FormCloseQuery(nil, cc);
 try
   Screen.Cursor:=crSQLWait;
   Application.ProcessMessages;
   cmdLine:=" A -ep "+IN_DIR+RARName+" "+dbDir+"\*.*";
   exe:="C:\Program Files\WinRAR\WinRAR.exe";
   FillChar(StartupInfo, SizeOf(StartupInfo), #0);
   StartupInfo.cb := SizeOf(StartupInfo);
   StartupInfo.dwFlags := STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES;
   StartupInfo.wShowWindow := SW_SHOW;
//   if not
   CreateProcess(PChar(exe),
     PChar(cmdline),
     nil,
     nil,
     False,
     NORMAL_PRIORITY_CLASS or CREATE_NEW_PROCESS_GROUP, // флаги создания
     nil,
     PChar(dbDir), // текущая директория
     StartupInfo,
     ProcessInfo);
   //then raise ERangeError.CreateFmt("Start WinRAR failed");
   WaitForSingleObject(ProcessInfo.hProcess, INFINITE);
   CloseHandle(ProcessInfo.hProcess);
   CloseHandle(ProcessInfo.hThread);
 finally
   Screen.Cursor:=crDefault;
   FormCreate(nil);
 end;
end;


 
savva ©   (2004-06-18 12:50) [1]

я бы все длинные имена (в путях к фалам и директориям) заключил бы в "


 
DSKalugin ©   (2004-06-18 13:13) [2]

Дык рар запускается, а в параметрах пути без пробелов

C:\Program Files\WinRAR\WinRAR.exe A -ep F:\projects\ecat\ec_IN\ec_1862004.rar F:\projects\ecat\ECDB\*.*


 
DSKalugin ©   (2004-06-18 13:34) [3]

2 savva ©
СПАСИБО!!!
В кавычки оказуется надо было брать патаметры, причем каждый!

Итак правильный ответ:
winrar "A" "-ep1" "F:\projects\ecat\ec_IN\ec_1862004.rar" "F:\projects\ecat\ECDB\*.*"


 
VMcL ©   (2004-06-18 13:35) [4]

>>DSKalugin ©  (18.06.04 13:13) [2]

-r

?



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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
14-1087988676
Gosha222
2004-06-23 15:04
2004.07.11
Переворачивание картинки


3-1087303547
_mandrake_
2004-06-15 16:45
2004.07.11
Не устанавливается interbase :-(((


4-1083161649
Бегун
2004-04-28 18:14
2004.07.11
Как запретить двигать форму?


4-1086023452
Manulo
2004-05-31 21:10
2004.07.11
Запуск команды от имени другого пользователя


4-1085663755
sesh
2004-05-27 17:15
2004.07.11
запуск программы как сервиса