Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
Woman   (2003-10-15 14:27) [0]

Добрый день!
Может кто подскажет, почему на строчку:

Date_n:=StrToDate("28.08.2003");

на моей машине subj не возникает, а на другой возникает?


 
Игорь Шевченко   (2003-10-15 14:30) [1]

потому что ShortDateFormat разный. Control Panel\International


 
Woman   (2003-10-15 14:34) [2]

А что это за параметры, можно ли их поменять?


 
Игорь Шевченко   (2003-10-15 14:35) [3]

Можно в проекте поставить первой строчкой
ShortDateFormat := "dd.mm.yyyy";


 
Woman   (2003-10-15 14:39) [4]

Спасибо.


 
Reindeer Moss Eater   (2003-10-15 14:43) [5]

Для уверенности нужно еще
Application.UpdateFormatSettings:=False;


 
Игорь Шевченко   (2003-10-15 15:19) [6]

Reindeer Moss Eater © (15.10.03 14:43)

Не нужно :)


 
Reindeer Moss Eater   (2003-10-15 15:20) [7]

Нужно, нужно.


 
Игорь Шевченко   (2003-10-15 15:22) [8]

Reindeer Moss Eater © (15.10.03 15:20)

А зачем ? :)


 
Reindeer Moss Eater   (2003-10-15 15:26) [9]

Запустили программу.
Она выполнила [3] и работает дальше.
Юзер переключился в панель управления и изменил формат даты.
Переменная ShortDateFormat в SysUtils изменилась на новое значение указанное юзером.
В программе настало время выполнить StrToDate.
Программа обломилась.


 
ZrenBy   (2003-10-15 15:27) [10]

Даты и времена, забиваемые руками куда-либо
нужно всегда представлять в ISO формате.
Проблем не будет никогда. Естественно, нужно
написать свою функцию преобразвания ISO->TDateTime

20030828 11:25:36:000

А все остальное от лукавого


 
Игорь Шевченко   (2003-10-15 15:32) [11]

Reindeer Moss Eater © (15.10.03 15:26)

Эта....а если юзер reset нажмет ?


 
Reindeer Moss Eater   (2003-10-15 15:33) [12]

[5]
Для уверенности нужно еще ...


 
игорь шевченко   (2003-10-15 15:57) [13]

Для уверенности не нужно преобразование строки в дату использовать. А еще для большей уверенности можно сделать так:

var
OldFormat : String;
begin
OldFormat := ShortDateFormat;
ShortDateFormat := "dd.mm.yyyy";
try
xxx := StrToDate ("01.01.1919");
finally
ShortDateFormat := OldFormat;
end;


 
Reindeer Moss Eater   (2003-10-15 16:13) [14]

А если формат поменяется аккурат "между" строками?

ShortDateFormat := "dd.mm.yyyy";
try
xxx := StrToDate ("01.01.1919");

:)


 
Игорь Шевченко   (2003-10-15 16:28) [15]

Reindeer Moss Eater © (15.10.03 16:13)

Тогда надо сразу format запускать :)


 
Романов Р.В.   (2003-10-15 17:39) [16]


> Reindeer Moss Eater © (15.10.03 16:13) [14]
> А если формат поменяется аккурат "между" строками?

Программа об этом узнает позже...


 
Игорь Шевченко   (2003-10-15 17:43) [17]

Романов Р.В. © (15.10.03 17:39)

Кстати, да, спасибо за напоминание. WM_SETTINGCHANGE ставится в очередь сообщений.



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

Форум: "Основная";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.017 c
3-89130
Suharew
2003-10-07 22:58
2003.10.27
SQL


1-89391
RoLeX
2003-10-15 12:17
2003.10.27
Как убрать из панели задач мою программу??


14-89519
Карлсон
2003-10-07 21:45
2003.10.27
два саундтрека для одного фильма на обычном CD.


6-89440
qw
2003-08-30 13:35
2003.10.27
mail


1-89384
Woman
2003-10-15 14:27
2003.10.27
EConvertError





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский