I have a program that was created in Delphi 5 and the program still runs nearly perfect on Win7 and Win8.
However, when trying to run this code in XE6 (trial version) I get two errors that I am having trouble fixing. Errors are with ‘DateSeparator’ and ‘LongTimeFormat’ with each having the error «undeclared identifier»
The code segment is as follows:
function AccurateTimeStamp:String;
begin
DateSeparator:='.';
LongTimeFormat:='hhmmsszzz';
result:=TimeToStr(Now);
end;
I am very new to Delphi but I’m pretty sure that «undeclared identifiers» mean’s that the item was not identified prior in code. If this is the case, I do not know how to accomplish this. Perhaps, errors are related to a change in code format since Delphi 5.
9 Years Ago
Anyone know how to avoid this error — message on compiling my program using Delphi XE5: Undeclared identifier: ‘DateSeparator’
When I compile the same program using Delphi XE, it is OK, without any errors.
I have declared:
uses
SysUtils ....;
Edited
9 Years Ago
by finalist
Recommended Answers
System.SysUtils.pas has this:
DateSeparator: Char deprecated ‘Use FormatSettings.DateSeparator’;
Jump to Post
All 3 Replies
9 Years Ago
System.SysUtils.pas has this:
DateSeparator: Char deprecated ‘Use FormatSettings.DateSeparator’;
finalist
1
Junior Poster in Training
9 Years Ago
Thanks !
When I changed DateSeparator to FormatSettings.DateSeparator, the program compiles successful.
finalist
1
Junior Poster in Training
9 Years Ago
Reply to this topic
Be a part of the DaniWeb community
We’re a friendly, industry-focused community of developers, IT pros, digital marketers,
and technology enthusiasts meeting, networking, learning, and sharing knowledge.
3 / 3 / 0 Регистрация: 15.09.2014 Сообщений: 17 |
|
1 |
|
08.10.2014, 11:19. Показов 2760. Ответов 3
Старый код вставил в Билдер XE7 Никак не могу понять, что прописать, чтобы он на DateSeparator не ругался? Помогите, если кто знает.
0 |
Супер-модератор 32582 / 21053 / 8131 Регистрация: 22.10.2011 Сообщений: 36,326 Записей в блоге: 8 |
|
08.10.2014, 11:23 |
2 |
Уже давным-давно это делается через TFormatSettings. Вот тут есть пример: Decimalseparator в XE 4
0 |
3 / 3 / 0 Регистрация: 15.09.2014 Сообщений: 17 |
|
08.10.2014, 11:25 [ТС] |
3 |
Спасибо! Уже разобрался. FormatSettings.DateSeparator — помогло.
0 |
Супер-модератор 32582 / 21053 / 8131 Регистрация: 22.10.2011 Сообщений: 36,326 Записей в блоге: 8 |
|
08.10.2014, 12:03 |
4 |
Ну естественно, надо же себе жизнь усложнить, как только можно, и опять сделать так, чтобы при переходе на очередную версию (или при работе с потоками на этоу версии) надо было править код… Разобрался он. Теперь возьми и разберись, что такое FormatSettings, и что там хранится.
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
08.10.2014, 12:03 |
4 |
У меня есть программа, созданная в Delphi 5, и она все еще работает почти идеально на Win7 и Win8.
Однако при попытке запустить этот код в XE6 (пробная версия) я получаю две ошибки, которые мне не удается исправить. Ошибки с ‘DateSeparator’ и ‘LongTimeFormat’, у каждого из которых есть ошибка «необъявленный идентификатор»
Сегмент кода выглядит следующим образом:
function AccurateTimeStamp:String;
begin
DateSeparator:='.';
LongTimeFormat:='hhmmsszzz';
result:=TimeToStr(Now);
end;
Я очень новичок в Delphi, но я почти уверен, что «необъявленные идентификаторы» означают, что элемент не был идентифицирован ранее в коде. Если это так, я не знаю, как это сделать. Возможно, ошибки связаны с изменением формата кода начиная с Delphi 5.
2014-08-05 03:08
1
ответ
Решение
Использование FormatSettings.DateSeparator
вместо DateSeparator
2014-08-05 03:45
-
#1
Delphi XE3 ругается на DateSeparator, говорит что Undeclared identifier.
Та же петрушка с ShortDateFormat.
System.SysUtils в uses естественно присутствует.
В XE2 все компилилось без проблем.
Кто нибудь знает что за фигня ?
-
#2
В SysUtils в XE3 убрали переменные(
Нужно переписать:
FormatSettings.DateSeparator:=…;
-
#3
О, точно.
Заработало, спасибо !
-
#4
XE3 is very disappointing
-
#5
XE3 is very disappointing
Не то слово ! Но… зато красиво выглядит код как !
-
#6
зато красиво выглядит код как !
большинство достигалось и раньше cnPack -ом