Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.17;
Скачать: [xml.tar.bz2];

Вниз

Подскажите в чём у меня ошибка - сам понять не могу.   Найти похожие ветки 

 
Lucifer   (2004-02-05 12:50) [0]

with Data.Table do begin
for i:=0 to Cnt-1 do begin
MStream:=TMemoryStream.Create;
(FindComponent("EA"+inttostr(i+1)) as TEA).Edit.Lines.SaveToStream(MStream);

Active:=false;
SQL.Clear;
SQL.Add("INSERT INTO Table (idP, Blob, Flag)");
SQL.Add("VALUES (:idP, :Blob, :Flag)");

Params[0].AsInteger:=Data.ParentTbl.Fields[0].AsInteger;
Params[1].LoadFromStream(MStream, ftBlob);
if (FindComponent("EA"+inttostr(i+1)) as TEA).PB.Active then Params[2].AsString:="T" else Params[2].AsString:="F";
Open;
AnswStream.Free;
end;//for i:=0 to AnswerCnt-1 do begin
end;//with Data.TBLAnswer do begin

На стоке:
(FindComponent("EA"+inttostr(i+1)) as TEA).Edit.Lines.SaveToStream(MStream);
выдаёт ошибку доступа (AV).


 
Sandman25   (2004-02-05 12:57) [1]

1. FindComponent вернул nil
2. или вернул адрес объекта, не являющегося (наследником) TEA


 
Тимохов   (2004-02-05 12:58) [2]

Компонент у тебя такой не находится просто...


 
Тимохов   (2004-02-05 12:59) [3]


> 2. или вернул адрес объекта, не являющегося (наследником)
> TEA

Тогда была бы ошибка в "as"


 
Sandman25   (2004-02-05 13:02) [4]

[3] Тимохов © (05.02.04 12:59)

Согласен. Я обычно использую прямое преобразование, без as. Вот и спутал.


 
icWasya   (2004-02-05 13:04) [5]

лучше делай так

var
EA:TEA;Component:TComponent Absolute EA;
...
for i:=0 to Cnt-1 do begin
C:=FindComponent("EA"+inttostr(i+1));
if C=Nil then Continue;
if not (C is TEA) then Continue;

//далее по тексту
EA.Edit.Lines.SaveToStream(MStream);
...


 
Lucifer   (2004-02-05 13:49) [6]

Спасибо. Попробую.



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

Форум: "Основная";
Текущий архив: 2004.02.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.015 c
14-53707
pasha_golub
2004-01-29 14:20
2004.02.17
http://www.infoter.narod.ru/


3-53375
denisov
2004-01-26 20:28
2004.02.17
Как обновить блоб поле, используя SQL? Возможно ли?


3-53398
NoName
2004-01-27 03:50
2004.02.17
Проблема с запросом


1-53452
DSP
2004-02-06 17:04
2004.02.17
нормальное завершение разархивации файлов разных типов архива


1-53466
VID
2004-02-05 19:53
2004.02.17
Уменьшение межстрочного интервала в RichEdit





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