Помогите пожалуста разобраться с архивированием arj.
Вообщем я создаю bat файл с кодом и запускаю его.
Все вроде работает, единственное, если попытаться сохранить архив на рабочем столе или в моих документах, то выдает ошибку. Можно ли ее исправить?
Цитата:
function StrToOem(const AnsiStr: string): string;
begin
SetLength(Result, Length(AnsiStr));
if Length(Result) <>0 then
CharToOem(PChar(AnsiStr), PChar(Result));
end;
procedure TForm1.Button1Click(Sender: TObject);
var
t:TextFile;
i:integer;
Begin
if Edit1.Text='' then
begin
ShowMessage(Укажите путь к данным!');
Abort;
end
else
Begin
// Открытие текстового файла для записи
AssignFile(t,'c:\1234.bat');
ReWrite(t);
// Записть в файл
Writeln(t,extractFileDrive(edit1.Text));
Writeln(t,'cd '+'"'+StrToOem(Edit1.Text)+'"');
Writeln(t,StrToOem(ExtractFileDir(Application.exen ame)+'\arj\arj a -r'+' '+'"'+Edit2.Text)+'"');
Writeln(t,'del "c:\1234.bat"'+' ');
//Writeln(t,'Pause'+' ');
// Закрытие файла
CloseFile(t);
// Запуск файла
WinExec('C:\1234.bat', 1);
end;
if CheckBox1.Checked=true then
begin
ShellExecute(Handle, nil, PAnsiChar(Form2.Edit1.Text), nil, nil, SW_SHOW);
end;
end;
|
Вот сама моя программа.
http://www.filehoster.ru/files/cs3293
Ее надо извлечь из архива и скинуть на диск с.
Если кто-нибудь сможет настроить, чтобы нормально работало, пишите, очень нужна ваша помощь.