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

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

Русский язык в win2000 server [D3, Win2k]


Карелин Артем ©   (2002-08-30 18:03:00) 

Проблема такая: формирую строку на русском языке и через буфер обмена и OLE пихаю в ексель. Так вот там выводится на русском только в том случае, если я ставлю шрифт b52. Причем это происходит, когда я вставляю через буфер в любую программу русский текст, сформированный из проги.
Что делать?


Anatoly Podgoretsky   (2002-08-30 19:06:00) [1]

Вот как обесчал нашел кое что в своих архивов, остальное не сохранилось

++++++++++++++++

А для Win 9x полезна такая вещь как CF_LOCALE.


С уважением: Александр Люлин ( http://everesteditor.chat.ru)

P. S. Пример. Для тех кто поймет.

if (Format = cf_Text) then begin
if (Win32Platform = VER_PLATFORM_WIN32_NT) then begin
MemUnicode := Tl3MemoryPool.Create(Self);
try
MemUnicode.Size := Mem.Size * 2;
MultiByteToWideChar(CP_RussianWin, 0, Mem.AsPointer, Mem.Size,
PWideChar(MemUnicode.AsPointer), Mem.Size);
SetClipboardData(cf_UnicodeText,
l3System.ReleaseHandle(MemUnicode.ReleaseHandle));
SetClipboardData(Format,
l3System.ReleaseHandle(Mem.ReleaseHandle));
finally
l3Free(MemUnicode);
end;{try..finally}
end else begin
SetClipboardData(Format,
l3System.ReleaseHandle(Mem.ReleaseHandle));
SetClipboardData(cf_Locale, Lang_Russian);
end;{..VER_PLATFORM_WIN32_NT..}
end // Format = cf_Text
+++++++++++++++++++


Карелин Артем   (2002-08-30 18:07:00) [2]

Может другое есть решение?


Reindeer Moss Eater   (2002-08-30 18:06:00) [3]

Например перед копированием в буфер смени keyboard layout на русскую


Наверх

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