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

Вниз

Ado blob field   Найти похожие ветки 

 
oss   (2002-06-10 12:44) [0]

Уважаемые, вот какое дело. Есть блоб поле, куда я записываю файлы. А проблема в том, что когда я читаю эти поля потом и создаю из их данных обратно файлы, то они не читаются как надо.
Ну к примеру *.doc просит установить доп.компоненти и в место файла в 3 страницы выдает 2,3 строчки белеберды


 
TSV ©   (2002-06-10 13:07) [1]

Код в студию (как записываешь в БД и как потом читаешь)!


 
oss   (2002-06-10 20:38) [2]

пишу так
sr:=TADOBlobStream.Create(TMemoField(dm_main.ADODSimage),bmWrite);
if dm_main.OpenDialog1.Execute then
begin
// m - промежуточное мемо
m:=TMemo.create(nil);
m.Visible:=false;
m.Parent:=frm_main;
m.Lines.LoadFromFile(dm_main.OpenDialog1.Filename);
dm_main.ADODS.fieldbyname("doc").asstring:=String(dm_main.OpenDialog1.Filename);
try
s:=m.GetTextLen;
Inc(s);
P := AllocMem(S);
FillChar(P^, S, #0);
m.GetTextBuf(P, S);
sr.Write(P^, S);
finally
sr.Free;
FreeMem(P, S);
end;

dm_main.ADODS.Post;
end;


потом читаю так
sr:=TADOBlobStream.Create(TMemoField(dm_main.ADODSimage),bmRead);
// sr.Seek(78,soFromBeginning); для картинок
dm_main.SaveDialog1.FileName:=dm_main.ADODS.fieldbyname("doc").asstring;
if dm_main.SaveDialog1.Execute then
sr.SaveToFile(dm_main.SaveDialog1.FileName);
sr.Free;



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-9763
Siv Soft
2002-06-12 14:32
2002.07.04
Как правильно использовать CT-lib и CashedUpdates?


8-9928
QueenOfRain
2002-02-27 12:06
2002.07.04
Scanline


1-9813
jenbbond
2002-06-24 10:20
2002.07.04
FreeReport


7-10042
Egor111
2002-04-07 02:45
2002.07.04
ComPort


3-9724
Виталий Панасенко
2002-06-11 08:47
2002.07.04
UPDATE дной таблице по друго с использованием SQL