Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Win.ini ; - СРОЧНО!! [D6, Win95/98]


Zorro ©   (2002-12-11 11:09:00) 

Мужики, помогите!! процедурка не сложная, суть: написал прогу на инглиш версии для рассчета дробных чисел... на русской винде по умолчанию разделитель ,(запятая)
Требуется изменить в win.ini строку sDecimal=, на sDecimal=.
при выходе из программы обратно...
Спасибо


han_malign   (2002-12-11 11:33:00) [1]

Anatoly Podgoretsky © (11.12.02 11:25)
- клиенту обычно положить какие у него региональный настройки(хочет точку ставит, хочет запятую, тем более, что у нас разделители тысяч не используются), если не работает, то неправ разработчик, так что приходится учитывать почти все что может взбрести в голову юзверю. (Защита от дурака - должна быть максимально полной, кроме, естественно, случая когда для этого приходится ИИ писать)


han_malign   (2002-12-11 11:28:00) [2]

это, если утрированно:
for i:=1 to Length(InStr)do
if(not(InStr[i] in["0".."9","E","e","+","-"," "])and(InStr[i]<>DecimalSeparator))
then InStr[i]:=DecimalSeparator;
- вообще по хорошему, нужно полную проверку формата числа делать


Anatoly Podgoretsky   (2002-12-11 11:25:00) [3]

Правильнее что бы программа не зависела от разделителя, а работала с региональными настройками и только в редких исключительных случаях можно на них плевать.
Программа написанная без извращений автоматически будет работать так.


FreeLancer   (2002-12-11 11:24:00) [4]

Я же написал:

Initialization
...
DecimalSeparator := ".";


Zorro   (2002-12-11 11:24:00) [5]

2FreeLancer: Спасибо!!


Zorro   (2002-12-11 11:19:00) [6]

может действительно win.ini не трогать - какие есть более мягкие методы? чтобы разделитель "." стал пониматься не переписывая кода?
TStringList+StringReplace хм...


FreeLancer   (2002-12-11 11:14:00) [7]

Song © (11.12.02 11:11)>

> Ну дык TStringList+StringReplace - первое что в голову пришло

Зачем же сразу Win.ini править? Есть куда более мягкие методы.


FreeLancer   (2002-12-11 11:12:00) [8]

Опять DecimalSeparator := "."; ?


Song   (2002-12-11 11:11:00) [9]

Ну дык TStringList+StringReplace - первое что в голову пришло


Наверх

Титульная страница Поиск, карта сайта Написать письмо