Форум: "Основная";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];
Внизархив и печать Найти похожие ветки
← →
selena (2003-11-14 09:42) [0]Здраствуйте
Помогите новичку пожалуйста.
Нужно написать программу которая ищет в каталоге архивный файл , разархивирует его и файлы которые в архиве нужно пустить на печать.Как это сделать ?Есть пример по аналогичным задачам?
← →
Maxud (2003-11-14 09:46) [1]В чем проблема - в поиске файла, дезархивации или печати?
← →
selena (2003-11-14 11:04) [2]в поиске
begin
ChDir("c:\super");
r:=FindFirst ("*.*", faAnyFile, f);
s:= ExtractFileName (f.Name);
begin
// d:=
// AssignFile (R,""prn");
end;
s:=IntToStr(r);
fMain.LbLog.Items.Add(s); //(ExtractFileName (f.Name));
// fMain.lbLog.Items.Add(TimeToStr(time)+IntToStr(r));
end;
И выводит 0 а не имя файла.
← →
Jel (2003-11-14 12:26) [3]FindFirst возвращает 0 если нашла файл.
> s:=IntToStr(r);
Его-то ты и получаешь в свой лог.
← →
selena (2003-11-14 13:50) [4]а как сделать чтобы было имя файла?
← →
Jel (2003-11-14 13:57) [5]Не хочу обидеть, но справку по функции FindFirst почитать не пробовали?
Там масса интересного. В том числе информация о том, что поиск открытый функцией FindFirst нужно потом закрывать при помощи FindClose и т.д.
← →
Maxud (2003-11-14 14:01) [6]
procedure fMain.ScanDir(DirName: string);
var SR: TSearchRec;
begin
if findFirst(DirName+"\*.*", faAnyFile, SR) = 0 then
repeat
if (SR.Name <> ".") and (SR.Name <> "..") then
if (SR.Attrib and faDirectory) <> faDirectory) then
LbLog.Items.Add(SR.Name);
until FindNext(SR) <> 0;
FindClose(SR);
end;
Все файлы в LbLog. Что дальше?
← →
selena (2003-11-14 15:58) [7]Больщое спасибо.А файл справки я читал , но у меня с английйски не очень.Чтобы распечатать файл достаточно AssignPrn()?
← →
Maxud (2003-11-14 16:12) [8]
uses Printers;
procedure PrintStrings(Strings: TStrings);
var
Prn: TextFile;
i: word;
begin
AssignPrn(Prn);
try
Rewrite(Prn);
try
for i := 0 to Strings.Count - 1 do
writeln(Prn, Strings.Strings[i]);
finally
CloseFile(Prn);
end;
except
on EInOutError do
MessageDlg("Error Printing text.", mtError, [mbOk], 0);
end;
end;
// Пример
var i: integer;
begin
for i := 0 to LBLog.Items.Count-1 do
begin
Memo1.Lines.LoadFromFile(LBLog.Items[i]);
PrintStrings(LbLog.Lines);
end;
end;
← →
selena (2003-11-15 10:05) [9]Спасибо.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c