Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
1-89967
Михайлов Антон
2003-11-17 14:03
2003.11.27
Самомодифицирующийся код


8-90004
Schumofil
2003-07-30 20:12
2003.11.27
Как конвертировать GIF в BMP?


3-89751
space
2003-11-08 00:06
2003.11.27
распространение базы данных на диске


1-89942
Pert
2003-11-17 21:29
2003.11.27
из Edit a в переменную


1-89935
malefik
2003-11-18 09:03
2003.11.27
Не происходит события ONTIMER





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