Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы русского языка в Delphi, ????????? ? ??????? - Одни вопросы 
:(
    Опции темы
Oleg
Дата 30.3.2003, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 16.9.2002

Репутация: нет
Всего: нет



У меня прога, созданная в делфях (все шрифты форм по умолчанию, язык русский), в некоторых аккаунтах винды2000 пишет вместо русских слов confused.gifconfused.gif? confused.gif confused.gif?? confused.gif ??, причем на одном и том же компе, просто юзера разные. Просто шрифта не хватает, или нужно чето в проге изменить?
--------------------
...Знающий не доказывает.   Доказывающий не знает...
PM MAIL   Вверх
serious
Дата 30.3.2003, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 15.2.2003
Где: Пенза

Репутация: нет
Всего: 1



Может в винде дело? Какая винда-то, кстати? SP или еще чего?


--------------------
Я знаю то, что ничего не знаю, а некоторые не знают и этого.
PM MAIL   Вверх
Alex
Дата 31.3.2003, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 80
Всего: 162



Если вам высвечиваются вместо букв знаки вопроса то это проблема Unicode возможно какие-то из компонентов, которые вы используете, ее не поддерживают. Проблема очень хорошо известна пользователям ХР, она возникает при копировании русского текста к примеру из Delphi в блокнот в том случае когда установлена английская раскладка клавиатуры. Чтобы скопировать текст нормально нужно перед копированием переключиться на русскую раскладку и спокойно копировать все будет нормально. Да кстати, а какая Delphi


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Oleg
Дата 31.3.2003, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 108
Регистрация: 16.9.2002

Репутация: нет
Всего: нет



Borland Delphi7, Microsoft Windows 2000 v 5.00.2195 ServicePack 3.
Да ничего я вроде экзотического не использую. Я ж говорю, во всех формах проекта, начиная с главной такая вот белибердень.
--------------------
...Знающий не доказывает.   Доказывающий не знает...
PM MAIL   Вверх
SmaLL
Дата 31.3.2003, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 557
Регистрация: 17.12.2002
Где: Voronezh

Репутация: 1
Всего: 2



У меня дома всЁ стоит аналогичное и всЁ - ОК
А на работе Д6, так перенос у меня никаких проблем не вызывает.

Если формы сохранены как текст, то как это дело в фаре отображается или в блокноте??

Посмотри в настройках какой используется шрифт для отображения в ID.

И ещЁ, типа можно попробовать в реестре в NLS/Codepages поменять 1252 на 1251...

Это сообщение отредактировал(а) SmaLL - 31.3.2003, 19:42


--------------------
Что ни делается - всЁ к лучшему! SmallWeb
Мой адрес не дом и не улица, мой адрес родной пивзавод!
PM MAIL WWW ICQ   Вверх
3D-Dragon
Дата 3.4.2003, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 7.1.2003
Где: Днепропетровск, U A

Репутация: нет
Всего: нет



патч реестра вылечит ...

9x.ME.reg
Код
REGEDIT4

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage]
"1250"="cp_1251.nls"
"1251"="cp_1251.nls"
"1252"="cp_1251.nls"
"1253"="cp_1251.nls"
"1254"="cp_1251.nls"
"1257"="cp_1251.nls"


NT.2k.XP.reg
Код
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1250"="c_1251.nls"
"1251"="c_1251.nls"
"1252"="c_1251.nls"
"1253"="c_1251.nls"
"1254"="c_1251.nls"
"1255"="c_1251.nls"


PM MAIL WWW ICQ   Вверх
Alexeis
Дата 13.7.2006, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Заново поднимаю эту тему!
Указанный патч не безапасен если в системе установленно кроме руского и английского языков какой нибудь еще. При этом нарушается правельное определенияе раскладок клавиатуры.
Если у вас установлено три или более языков ни в коем случае не делайте такой патч - я таким образом попортил реестры на двух компах, один из которых мой smile  smile  


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Yanis
Дата 13.7.2006, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Добавлю только, что Snowy очень хорошо отписался о решении этой проблемы.
http://forum.vingrad.ru/index.php?showtopic=82093

alexeis1
Ручами можно исправить там где испорчено smile 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 13.7.2006, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Yanis, Эту тему я хорошо знаю, но этот пач лечил не только свои, но и чужие проги имеющие те же проблемы! А мне не свою лечить надо было! Оказывается не лечил, а калечил винду.
Цитата(Yanis @  13.7.2006,  14:33 Найти цитируемый пост)
Ручами можно исправить там где испорчено

<offtop>это понятно но догадался кто виноват я лишь тогда, когда узнал, что на втором компе те же глюки что и у меня!</offtop>

 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Snowy
Дата 13.7.2006, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(3D-Dragon @  3.4.2003,  17:57 Найти цитируемый пост)
"1252"="c_1251.nls"
Нужна только эта строчка.
Остальные трогать не нужно.
Кроме того, выставить в региональных настройках русский для неюникодных программ.
Если это не подходит, то писать лаунчер, который будет делать SetThreadLocale для запускаемоу программы. 
PM MAIL   Вверх
Alexeis
Дата 13.7.2006, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(Snowy @  13.7.2006,  15:13 Найти цитируемый пост)
 который будет делать SetThreadLocale для запускаемоу программы

т.е. так smile 
createpocess(...,...,'some.exe',somethreadID,.... );
SetThreadLocale(somethreadID,1251);  


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Snowy
Дата 13.7.2006, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Угу. Правда не разу не пробовал, но по логике должно работать.
Запускаемая программа на дельфи? 
PM MAIL   Вверх
Alexeis
Дата 13.7.2006, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(Snowy @  13.7.2006,  16:03 Найти цитируемый пост)
Запускаемая программа на дельфи? 

думаю нет, да речь идет не только об одной проге, такая ситуация появляется довольно часто с недоотлажеными прогами.
Тема немного откланилась я попробую как сказал Snowy, как получится отпишусь... 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Alexeis
Дата 14.7.2006, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Очередной раз убеждаюсь windows хорошо работает, только если на него ничего не установлено и поставлен он с настройками по умалчанию
smile smile
Найти "концы" я так и не смог, но хоть и криво но все поправил!
Однако (теперь по теме), обнаружил, что
SetThreadLocale - работает только с текущим потоком, а это значит, что без заморочки с хуками здесь не обойтись - получится совсем криво smile
Может кто знает такую же функцию (SetThreadLocale), но только для внесения изменений в чужой поток? 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Yanis
Дата 14.7.2006, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(alexeis1 @  14.7.2006,  10:42 Найти цитируемый пост)
SetThreadLocale - работает только с текущим потоком

Цитата(MSDN)
The SetThreadLocale function sets the calling thread's current locale.


Цитата(alexeis1 @  14.7.2006,  10:42 Найти цитируемый пост)
Может кто знает такую же функцию (SetThreadLocale), но только для внесения изменений в чужой поток?

Цитата(Snowy @  13.7.2006,  16:13 Найти цитируемый пост)
писать лаунчер, который будет делать SetThreadLocale для запускаемоу программы.

Наверное это самый простой способ. 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 14.7.2006, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Yanis че`т я не понял последнего поста.
Про MSDN я и сам знаю, по нему и писал пост....?????

Так лаунчер это друрой поток, свой поток (лаунчера) он настроит, а вот поток приложения (для него чужой) который запустит лаунчер я не могу настроить, при помощи этой функции. 



 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Yanis
Дата 14.7.2006, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



alexeis1, Snowy имел ввиду запуск дочернего (или не дочернего) процесса и уже "из него" вызвать SetThreadLocale путём вызова CreateRemoteThread(hRemouteProc, ..... Тока перед этим надобно память выделить в процессе кажется smile 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 14.7.2006, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(Yanis @  14.7.2006,  11:13 Найти цитируемый пост)
запуск дочернего (или не дочернего) процесса

Это что-то новенькое, про дочерний поток я слышал, а проэто нет!

Цитата(Yanis @  14.7.2006,  11:13 Найти цитируемый пост)
уже "из него" вызвать SetThreadLocale

Так как же я могу это сделать из него - он же чужая программа, не встраивать же в него свой код!

А вот про CreateRemoteThread тоже не слышал - сейчас буду разбираться!

Добавлено @ 11:31 
Ух-ты CreateRemoteThread - это серьезно буду пробовать, а вот
Цитата(Yanis @  14.7.2006,  11:13 Найти цитируемый пост)
 Тока перед этим надобно память выделить в процессе кажется 

этого в helpe я не увидел!
 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Yanis
Дата 14.7.2006, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



alexeis1
Я в этом советчик не очень хороший. Но сам посуди - мы вызываем функцию о которой процесс и не знает, причём ещё и параметры нуна передавать ему. На сколько я понимаю проще всего сделать внедрение dll. По этому поводу есть хороший пример у роуза на его сайте.
вот что дал поиск по WinAPI разделу 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 14.7.2006, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Понял! память нужна если мы хотим передать что-то этому "присосавшемуся" потоку, а если нет, то я думаю можно обойтись nil
Спасибо Yanis! 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Yanis
Дата 14.7.2006, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



alexeis1
Могу накатать пример с получением командной строки чужого процесса. Суть тут та же: вызов функции GetCommandLine из чужого процесса, т.к. GetCommandLine позволяет получать только "свою" коммандную строку. Правда без CreateRemouteThred, но довольно показательный пример.

P. S. мона и через CreateRemouteThred извратиться, т.к. GetCommandLine возврящает всего 4 байта 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
bems
Дата 14.7.2006, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Тут еще попутно такой вопрос, а не знает кто, как в консоли русский текст нормально выводить? 


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Snowy
Дата 14.7.2006, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Знаем.
Или перекодировать в OEM (AnsiToOEM)
или выводить в юникоде. 
PM MAIL   Вверх
Yanis
Дата 14.7.2006, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



bems
В чужой консоли? smile 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 14.7.2006, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Yanis, Не он в своей, в чужой-то он ничего не выведет smile  


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Snowy
Дата 14.7.2006, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



SetConsoleCP
SetConsoleOutputCP 
PM MAIL   Вверх
bems
Дата 17.7.2006, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Цитата(Snowy @  14.7.2006,  14:54 Найти цитируемый пост)
SetConsoleCP
SetConsoleOutputCP  
Вот это и интригует. Вроде функции специально для этого предназанчены, но чтобы заработало так и не вышло  smile 
Цитата(alexeis1 @  14.7.2006,  14:52 Найти цитируемый пост)
Yanis, Не он в своей, в чужой-то он ничего не выведет 
А это как понимать?
 


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Alexeis
Дата 17.7.2006, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(bems @  17.7.2006,  08:45 Найти цитируемый пост)
А это как понимать?

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


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Alexeis
Дата 17.7.2006, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Код

program Project1;

{$APPTYPE CONSOLE}
uses
   windows;
procedure MyWriteln(const S: string);
var
  NewStr: string;
begin
  SetLength(NewStr, Length(S));
  CharToOEM(PChar(S), PChar(NewStr));
  Writeln(NewStr);
end;

begin
  MyWriteln('русский язык');
  Writeln('русский язык');
  Readln;
end.
   

Это сообщение отредактировал(а) alexeis1 - 17.7.2006, 09:42


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ramin
Дата 17.7.2006, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 17.7.2006
Где: Азербаиджан, Баку

Репутация: нет
Всего: нет



Цитата(Oleg @ 30.3.2003,  00:23)
У меня прога, созданная в делфях (все шрифты форм по умолчанию, язык русский), в некоторых аккаунтах винды2000 пишет вместо русских слов ??????? ??? ????? ??? ??, причем на одном и том же компе, просто юзера разные. Просто шрифта не хватает, или нужно чето в проге изменить?

не читал посты который ответили тебя но ты посмотри на Языке и Регионалы... какой чзык там у тя стоит? 
PM MAIL WWW ICQ   Вверх
Yanis
Дата 17.7.2006, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Ramin
Я думаю, что вопрос 3-х летней давности уже решён. 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
bems
Дата 17.7.2006, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Yanis, 
alexeis1, в своей
Цитата(alexeis1 @  17.7.2006,  09:37 Найти цитируемый пост)
MyWriteln('русский язык');
  Writeln('русский язык');
Хотелось бы русифицировать саму консоль и писать обычным Writeln.
Вот SetConsoleOutputCP по описанию - то что надо, но в моих кривых руках не работает.
 


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Alexeis
Дата 17.7.2006, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



bems, Я прогнал 2100 страниц - от 1 до 2100
Все одно и тоже, эти функции не меняют кодировку 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Alexeis
Дата 17.7.2006, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



А вот так можно все кодировки просмотреть - результат анологичний
Код

program Project1;

{$APPTYPE CONSOLE}
uses
   windows, SysUtils, Registry, Classes;

procedure MyWriteln(const S: string);
var
  NewStr: string;
begin
  SetLength(NewStr, Length(S));
  CharToOEM(PChar(S), PChar(NewStr));
  Writeln(NewStr);
end;

 var
   i,j, v: Integer;
   k : Boolean;
   r : TRegistry;
   l : TStringList;

begin
   r:=  TRegistry.Create;
   r.RootKey := HKEY_LOCAL_MACHINE;
   k := r.OpenKey('SYSTEM\CurrentControlSet\Control\Nls\CodePage', false);
   l := TStringList.Create;
   r.GetValueNames(l);
   for i := 0 to l.Count - 1
   do
     Begin
       if trystrtoint(l[i], v)
       then
         k := SetConsoleOutputCP(v);
         if k
         then
           begin
            Writeln(l[i]);
            Writeln('русский язык');
           end;
     end;
   r.CloseKey;
   r.Free;
   l.Free;
  Readln;
end.
 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0830 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.