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

Вниз

Несовместимость ОС   Найти похожие ветки 

 
KADAN   (2004-02-11 14:08) [0]

Доброго времени суток, мастера!
У меня какая-то чача приключилась. Вобщем сижу себе в Вин2000 программирую на Делфе 6, все прекрасно работает.
Иду сдавать прогу, а там стоит 98я (дюже томозная) и в паре мест выскакивают непонятные ошибки (Вроде External exception 46), предположительно вот в этом месте:

procedure TEditOpForm.Edit1Change(Sender: TObject);
var asd:real;
begin
Try
asd:=1/StrToFloat(edit1.Text);
BitBtn1.Enabled:=true;
except on e:Exception do
BitBtn1.Enabled:=false;
end;
end;


Да еще и в SQL"е что-то вроде инвалида параметра
ALTER TABLE "NAME.DBF"
ADD NUMBER NUMERIC(6),
ADD SUMMA NUMERIC(12,2),
ADD FLAG NUMERIC(1),
ADD NOTE CHAR(20),
ADD INSFLAG CHAR(1);"


Решил я что это глюк 98, но оказалось не так. при тестировании на другой 98й оказалось, что все работает просто замечательно.
Спасайте.


 
VLAD-MAL   (2004-02-11 14:14) [1]

Насчет инвалида - это может как BDE версия не та (или не под то заточена - в реестре, к примеру), так версия SQL - сервера не та. Похожие проблемы были. ВЫлечились окончательно тем, что все компы перешли на XP.


 
Agent13 ©   (2004-02-11 14:14) [2]

Может проблема в формате разделителя дробной части числа?


 
VLAD-MAL   (2004-02-11 14:16) [3]

Точно! Проверь DecimalSeparator!


 
KADAN   (2004-02-11 14:21) [4]

БДЕ стоит тот же, сам ставил. А в децимал сепараторе точно нет ошибки. Изменял региональные сеттинги, чего только не делал - нет ошибки и все.


 
VLAD-MAL   (2004-02-11 14:23) [5]

А всякие там Midas.dll/midaslib?


 
KADAN   (2004-02-11 14:26) [6]

В смысле? что с ними может быть?


 
VLAD-MAL   (2004-02-11 14:33) [7]

Ну, может их не быть. Или быть не той версии.


 
KADAN   (2004-02-11 14:34) [8]

нет, это наврядли... а что же все-таки с делением на ноль?


 
VLAD-MAL   (2004-02-11 14:39) [9]

А насчет деления - ну его на фиг. Перед делением дополнительно проверяй знаменатель на корректность. Блок Try -except - end - фича OS, и, возможно, не так отрабатывается в разных версиях при исключительных ситуациях. Типа:

procedure TEditOpForm.Edit1Change(Sender: TObject);
var asd:real;
begin
Try
asd := StrToFloat(edit1.Text);
if asd = 0 then
raise Error.Create("Кирдык!");
asd:=1/asd;
BitBtn1.Enabled:=true;
except on e:Exception do
BitBtn1.Enabled:=false;
end;
end;


 
KADAN   (2004-02-11 14:45) [10]

Вобщем, ето я уже исправил на вот такое:

val(edit1.Text,asd,code);
BitBtn1.Enabled:=(code=0) and (asd>0);


Но все равно мне интересно, что ето за ерунда такая случилась.


 
KADAN   (2004-02-11 14:48) [11]

Вот еще забыл сказать... один раз на етом месте я видал External exception, а в другой раз синенький экран :(


 
VLAD-MAL   (2004-02-11 14:54) [12]

Виндовс даст дай!


 
KSergey ©   (2004-02-11 15:02) [13]

Настораживает фраза:

> KADAN (11.02.04 14:08)
> Иду сдавать прогу, а там стоит 98я ( дюже томозная)

Тормозная от чего? Слабая машинка? Так может просто ресурсов не хватает -> ошибки проектирования?


 
VLAD-MAL   (2004-02-11 15:04) [14]

Или аппаратура глючит?


 
KADAN   (2004-02-12 08:42) [15]

"Дюже тормозная" в смысле: и так машина не ахти, так еще и загажена вся.


 
KSergey ©   (2004-02-12 08:44) [16]

Ну так может предположение о недостатке ресурсов под данное приложение верно?


 
KADAN   (2004-02-12 10:27) [17]

Нет, не верно. прога почти не жрет ресурсов.



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

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

Наверх




Память: 0.5 MB
Время: 0.02 c
1-79786
MK
2004-02-11 16:49
2004.02.25
Глюк Images в MainMenu


3-79649
Vitalik
2004-01-31 14:51
2004.02.25
Изменение значения через DbGrid


14-80179
Palladin
2004-01-31 20:33
2004.02.25
Enum фирм использующих Delphi как основной инструмент разработки


14-80111
able
2004-02-05 14:54
2004.02.25
SATA???


1-79762
Vladimir "Chainik"
2004-02-10 14:18
2004.02.25
Оптимизация (ускорение работы) программы