![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с 98 виндой. Помогите! Плиз! [D6, D7, 95/98, 2000, XP]
TIF © (2006-10-27 18:25:00)Добрый вечер!
Моя программа нормально работает с XP, 2000, но если её запустить в 98, в одном месте происходит НЕВЫПОЛНЕНИЕ части програмного кода: например, Button1 должна стать видимой, а она не становится и т. п. Возможности сменить ОС на том компе нет, патчи для 98 уже не выпускают. Кто знает, в чём тут дело? Я конечно понимаю, что 98 - очень устаревшая система, но программа должна там функционировать.
Anatoly Podgoretsky (2006-10-28 11:41:00) [1]
> а как эту ошибку убрать в 98 винде? объясните чайнику
Какую ошибку, если ты ее скрыл от пользователя.
Anatoly Podgoretsky (2006-10-28 11:40:00) [2]TIF © (27.10.06 19:11) [12]
Это что за безобразие, ты еще содержимое всего диска сбрось сюда.
TIF (2006-10-28 07:48:00) [3]Уважаемый ЮЮ - ты гений! Но такие функции в первый раз вижу. Можно какой-нибудь допотопный примерчик хотя бы?
TIF (2006-10-28 07:44:00) [4]>>Читай книжки учись пользоваться отладчиком. Если есть такое невыполение кода,
на 90% где то происходит ошибка которую ты скрываешь try ... except end;
а как эту ошибку убрать в 98 винде? объясните чайнику
ЮЮ (2006-10-28 07:43:00) [5]StrToInt(copy(DateToStr(Date), 7, 4)))
DateToStr(Date) не обязана всегда выводить в формате 'dd.mm.yyyy'
В твоей вин98 другие рег.настройки для краткого формат даты.
Или в порограмме "зашей" его см.ShortDateFormat или вычленяй из Date надлежащими функциями (YearOf, DecodeDate)
TIF (2006-10-28 07:29:00) [6]Подводим итоги. Всё дело в - try except end -. Но почему только в 98? А вдругих ОС этот глюк перестаёт быть глюком?
if key=#13 then test:=StrToIntDef(Edit_GodIzd.Text, -1);
ну и проверяй его на -1 и на test<=1900
??? мне надо проверять не на <=1900 а на ОТ 1900 до текущего года
> MDLG1('Год издания должен находиться в промежутке'+#13#10+'от
> 1900 до 2006 включительно!', 'e');
С чего ты взял что до 2006? при твоей проверке:
if (test>=1900) and (test<=StrToInt(copy(DateToStr(Date), 7, 4))) then begin
Да, test<=текущий год (а какой сейчас год? 2006!)
Ketmar (2006-10-28 03:39:00) [7]>[31] RASkov 28-Oct-2006, 01:22
>Ну ты ж хочешь побыстрее "забить" ее
не таким же мусором! %-)
RASkov (2006-10-28 01:22:00) [8]> [16] Ketmar © (27.10.06 19:17)
Ну ты ж хочешь побыстрее "забить" ее
:)) Чел старается, помогает тебе.
Вот и завтра помоги ему с ответом:)
> [25] Ketmar © (27.10.06 19:30)не нагадил, а доза долгожданных байт:))
> [17] TIF
Ну ты б еще и дфм до кучи выложил бы. Кетмару поможешь... он тебе....
По теме мож так че-нить
if key=#13 then test:=StrToIntDef(Edit_GodIzd.Text, -1);
ну и проверяй его на -1 и на test<=1900
> MDLG1('Неверный года издания!'+#13#10+'Год издания - целое
> положительное число'+#13#10#13#10+'Повторите ввод инвентарного
> номера', 'e');
О чем это?
> MDLG1('Год издания должен находиться в промежутке'+#13#10+'от
> 1900 до 2006 включительно!', 'e');
С чего ты взял что до 2006? при твоей проверке:
if (test>=1900) and (test<=StrToInt(copy(DateToStr(Date), 7, 4))) then begin
> глюки кончились
>
> ******************
Не... это ты зря:)
ProgRAMmer Dimonych (2006-10-27 19:49:00) [9]P.S. Только, наверное, другими словами...
Ketmar (2006-10-27 19:49:00) [10]>[28] ProgRAMmer Dimonych(c) 27-Oct-2006, 19:47
>Забавно. Та же мысль уже где-то мелькала под тем же именем
>:)
???
ProgRAMmer Dimonych (2006-10-27 19:47:00) [11]Забавно. Та же мысль уже где-то мелькала под тем же именем :)
Ketmar (2006-10-27 19:44:00) [12]>[26] ProgRAMmer Dimonych(c) 27-Oct-2006, 19:42
>Чего так жестоко-то? Человек, может, разобраться хочет.
если бы...
ProgRAMmer Dimonych (2006-10-27 19:42:00) [13]> Ketmar
Чего так жестоко-то? Человек, может, разобраться хочет.
Ketmar (2006-10-27 19:30:00) [14]опять нагадил. что он съел-то такого? пургена, что ли? %-(
TIF (2006-10-27 19:28:00) [15]Есть только одно отличие от Толстого: у того Война и Мир, а у меня Программист и Глюки
всё вылетаю
TIF (2006-10-27 19:26:00) [16]инет кончился.
завтра отошлю по электронной почте (если надо).
Sorry всем, кому надоел
TIF
ProgRAMmer Dimonych (2006-10-27 19:24:00) [17]Толстой бы позавидовал.
TIF (2006-10-27 19:23:00) [18]**************************
вот где глюки
procedure TForm1.Edit_GodIzdKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
try
test:=StrToInt(Edit_GodIzd.Text);
except
on EConvertError do // ошибка преобразования строки в число
begin
MDLG1('Неверный года издания!'+#13#10+'Год издания - целое положительное число'+#13#10#13#10+'Повторите ввод инвентарного номера', 'e');
Edit_GodIzd.Text:='';
test:=0;
exit;
end;
end;
if test<=0 then
begin
MDLG1('Неверный формат года издания!'+#13#10+'Год издания - число, большее нуля!'+#13#10#13#10+'Повторите ввод инвентарного номера', 'e');
Edit_GodIzd.Text:='';
end;
if test >0 then
begin
if (test>=1900) and (test<=StrToInt(copy(DateToStr(Date), 7, 4))) then begin
Labb6.Font.Color:=clGray;
La5.Font.Color:=clGray;
Edit_KolStr.Enabled:=true;
Edit_KolStr.SetFocus;
Edit_GodIzd.Enabled:=false;
Labb7.Font.Color:=clBlack;
Lab18.Font.Color:=clBlack;
Lab19.Font.Color:=clPurple;
end
else
begin
MDLG1('Год издания должен находиться в промежутке'+#13#10+'от 1900 до 2006 включительно!', 'e');
Edit_GodIzd.Text:='';
end;
end;
end;
end;
глюки кончились
******************
TIF (2006-10-27 19:21:00) [19]может по электроннной почте послать? а?
ProgRAMmer Dimonych (2006-10-27 19:20:00) [20]Ух, ё-моё, я надеялся, что это уже всё. С этими Labb'ами надо чего-то делать. В массив их, что ли?