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

Вниз

Помогите разобраться с ошибкой Invalid variant type    Найти похожие ветки 

 
Sectey ©   (2004-08-25 13:39) [0]

Совершенно неожиданно возникает ошибка :
raised exception class EVariantBadVarTypeError with message nvalid variant type".
Вот код :

type
 TFieldValue = packed record
   FieldName : String;                                             Value : variant;                                          
 end;
 PFieldValue = ^TFieldValue;

function TCmdGetLookupFields.AddField(AFieldName: string): integer;
var
 p : PFieldValue;
begin
 Result := -1;
 if AFieldName = "" then
   Exit;
 if IndexOfName(AFieldName) < 0 then
 begin
   GetMem(p,  sizeof(TFieldValue));
   try
     p^.FieldName := AFieldName;
     p^.Value := null;
<-Вот здесь и возникает ошибка При этом не всегда, при отладке ни разу не вылетела, а в рунтайме периодически.
     Result := FFields.Add(p);
   except
     FreeMem(p);
     Result := -1;
   end
 end;
end;


 
Skier ©   (2004-08-25 13:53) [1]

А что вернёт VarIsEmpty(p^.Value) ?


 
Sectey ©   (2004-08-25 13:59) [2]

>Skier ©
True - ведь переменная  не определена.

Ага т.е. variant лучше не инициализировать?


 
Skier ©   (2004-08-25 14:02) [3]

угу.
она у тебя не Empty, a Unassigned
посмотри справку по Unassigned...


 
Sectey ©   (2004-08-25 14:16) [4]

Спасибо большое



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

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

Наверх




Память: 0.47 MB
Время: 0.035 c
1-1093588084
Stype
2004-08-27 10:28
2004.09.12
Загрузочная форма


8-1087910010
Chery
2004-06-22 17:13
2004.09.12
MediaPlayer. Как развернуть файл во весь экран?


8-1087961266
ИМХО
2004-06-23 07:27
2004.09.12
Разбить картинку на 2 картинки


4-1091199779
Ertong
2004-07-30 19:02
2004.09.12
FreeLibrary


14-1092983199
Kerk
2004-08-20 10:26
2004.09.12
Расшифруй киборга! Останови вторжение!