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

Вниз

TStreame: глюк или ошибка?   Найти похожие ветки 

 
msalex ©   (2002-07-29 22:46) [0]

Почему у меня не получается выгрузить файл из потока процедурой
free.

procedure TForm1.Button1Click(Sender: TObject);
var
ZStm:TStream;
FileName: string[255];
Bitmap: TBitmap;
begin
try
ZStm:= TFileStream.Create("C:\test.bmp",fmOpenWrite,fmShareDenyWrite);
FileName:="Component";
Bitmap:= TBitmap.Create;
Bitmap.LoadFromFile("C:\Alex\bitmap.bmp");
Bitmap.SaveToStream(Zstm);
ZStm.WriteBuffer(FileName,sizeof(FileName));
FileName:="world";
ZStm.WriteBuffer(FileName,sizeof(FileName));
//ZStm.CopyFrom(MStm,MStm.Size);
except
Bitmap.Free;
ZStm.Free;
end;
end;


 
Юрий Зотов ©   (2002-07-30 00:59) [1]

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1027862770&n=0


 
Sergey Zholob   (2002-07-31 13:52) [2]

Вот исправленный кусок твоего кода

var
ZStm:TStream;
FileName: string[255];
Bitmap: TBitmap;
begin
try
ZStm:= TFileStream.Create("C:\test.bmp", fmOpenWrite or fmShareDenyWrite);
FileName:="Component";
Bitmap:= TBitmap.Create;
Bitmap.LoadFromFile("C:\Alex\bitmap.bmp");
Bitmap.SaveToStream(Zstm);
ZStm.WriteBuffer(FileName,sizeof(FileName));
FileName:="world";
ZStm.WriteBuffer(FileName,sizeof(FileName));
//ZStm.CopyFrom(MStm,MStm.Size);
finally
Bitmap.Free;
ZStm.Free;
end;
end;

Ошибки:
1.Пропущен оператор OR в вызове TFileStream.Create;
Если у тебя файл "C:\test.bmp" не существует, то в первом вызове надо ставить fmCreatе (так надежнее), иначе fmOpenWrite (читай справку).
2.Вместо директивы "finally" стоит "except". А поскольку исключительной ситуации при нормальной работе не происходит, то управление в эту часть программы, конечно, не передается.



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
4-35513
ATLANTIDO
2002-06-03 16:13
2002.08.12
свернуть окно


14-35425
Dimich1978
2002-07-17 10:18
2002.08.12
Вопрос про короткие имена файлов


14-35468
Lola
2002-07-15 17:08
2002.08.12
Советую обратить внимание начинающим и не очень.


14-35429
Л.Ге
2002-07-15 11:25
2002.08.12
Вывод в DBGrid c произвольной строки (D6, IB6)


14-35454
Digitalloops
2002-07-17 21:56
2002.08.12
Сколько стоит монитор?