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

Вниз

Overflow ...   Найти похожие ветки 

 
istok   (2007-12-17 23:16) [0]

У одного юзера иногда в программе вылетает "Overflow while converting variant of type (LongWord) into type (Integer)."  Но eurekalog это дело не ловит и совершенно не ясно в каком месте и отчего такое может быть.

Не подскажете, куда копать?


 
antonn (work)   (2007-12-17 23:29) [1]

это значит, что идет присвоение "длинного ворда" интегеру %)
типа не хватает цифр в интегере, чтобы получить "длинный ворд", вот и ругается.


 
homm ©   (2007-12-17 23:46) [2]

> antonn (work)

Не поздновато ли? :)


 
istok   (2007-12-17 23:47) [3]

я тоже так подумал))

но как мне перебрать десятки тысяч строк кода проверив, функции, возвращающие longword - вот вопрос:)

для этого специальных программ нет?


 
oldman ©   (2007-12-18 09:53) [4]


> совершенно не ясно в каком месте


Что, в разные моменты вылетает?
Или автор не знает, какой кусок кода в данный момент выполняется?
Или там так много присвоения интегеру лонгворда?


 
istok   (2007-12-18 11:51) [5]


> Что, в разные моменты вылетает?
> Или автор не знает, какой кусок кода в данный момент выполняется?
>
> Или там так много присвоения интегеру лонгворда?


вылетает не у автора, а у одного из юзеров.

в разные моменты и дни.

много там присвоения или нет я не знаю, надо ж весь код перебирать.
вот я и спрашиваю, может есть какие спец. средства для такого перебора?
надо вывести все функции, которые longword в программе возвращают.


 
Сергей М. ©   (2007-12-18 11:59) [6]


> надо вывести все функции, которые longword в программе возвращают


Воспользуйся встроенными в Делфи возможностями поиска файлов проекта, в которых встречается интересующая тебя строка


 
sniknik ©   (2007-12-18 12:12) [7]

> надо вывести все функции, которые longword в программе возвращают.
вообщето нужны не функции которые возвращают ... , а то где происходит конвертация из варианта с данными типа longword в integer, например на присвоении типа
var
 v: variant;
 i: Integer;
begin
 inherited;
 v:= LongWord(-1); //$FFFFFFFF;
 i:= v;
 ShowMessage(IntToStr(i));
end;

причем большого числа, у которого используется бит знака... т.е. если в примере хотя бы одну F убрать то присвоение пройдет нормально. фактически нужно искать то место числа в варианте > $7FFFFFFF и они присваиваются integer-у.


 
sniknik ©   (2007-12-18 12:17) [8]

эээ... ата, inherited; в примере лишний, затесался т.к. форма на которой кликнул чтобы это написать была наследуемой.


 
antonn ©   (2007-12-18 12:28) [9]


> homm ©   (17.12.07 23:46) [2]
>
> > antonn (work)
>
> Не поздновато ли? :)

в ночь пошел.
я тут от скуки все перерыл, не знал, чем заняться :)



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
2-1197979621
Konstantin
2007-12-18 15:07
2008.01.20
Удаление (в цикле) лишних знаков в strin-говом значении


2-1198043861
Kolan
2007-12-19 08:57
2008.01.20
А можно ли как-то заполучить строки вроде «Да», «Отмена» из Win?


2-1198141918
SKIPtr
2007-12-20 12:11
2008.01.20
Как узнать об изменении CheckBox


15-1197639448
Андрей Пл
2007-12-14 16:37
2008.01.20
Дайте пожалуйста ссылки по использованию QuickReport


2-1198238982
Washington
2007-12-21 15:09
2008.01.20
Метод Delete