Вниз
Скачать: CL | DM;

TClientDataSet.Locate русских строк вызывает AV в kernel32.dll   Найти похожие ветки 

 
clickmaker ©   (2003-05-30 14:17) [0]

Привет всем! Такой код вызывает AV

CDS.Locate(DBGrid.SelectedField.FieldName, Value, [loCaseInsensitive]);

Вызов для TDBGrid перед ShowModal, Value типа Variant, значение - строка. Ищется строка в таблице, состоящей из русских названий. Причем AV вылезает не при всех значениях этой строки, но закономерность мне найти не удалось.

Но такой код (уже после того, как форма появилась) работает:

if (edSearch.Text <> "") then
cdsData.Locate(DBGrid.SelectedField.FieldName, edSearch.Text, [loPartialKey, loCaseInsensitive]);

VarToStr(Value) и даже явное указание значения в Locate дают тот же эффект.

Знатоки! Может подскажете, где грабли?


 
Romkin ©   (2003-05-30 14:39) [1]

Таки пора ставить Update Pack
или хотя бы VarToStr(Value) подавать


 
clickmaker ©   (2003-05-30 14:43) [2]

Update Pack стоит.
VarToStr(Value) и даже явное указание значения в Locate дают тот же эффект


 
Romkin ©   (2003-05-30 14:57) [3]

Значит, ошибка в другом месте, ищи, где память не выделена, или еще что-то


 
clickmaker ©   (2003-05-30 15:03) [4]

Разобрался! У меня Д5 и Д6 стоят, midas.dll из Д6 зарегистрирована, а прога в Д5 написана. Заменил midas на 5 - все заиграло! Несовместимость, однако...


 
Romkin ©   (2003-05-30 15:27) [5]

У меня так же стоит - все в порядке, midas от D6SP2, с ним D5 прекрасно работает



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
14-84564
Sheng
2003-06-07 21:43
2003.06.26
Поисковик для Винампа


7-84808
new comer and co
2003-04-16 16:27
2003.06.26
эмуляция нажатия клавиш


14-84589
Кен
2003-06-07 06:05
2003.06.26
Как создать пользовательский мод для мод для Unreal Tournament


1-84159
Недавно начал
2003-06-11 13:48
2003.06.26
PopupMenu & TreeView


1-84413
qwerty2
2003-06-06 16:32
2003.06.26
Создание DCOM объекта в Win98




   Наверх