Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 01.05.2011, 08:19
Аватар для GriLab
GriLab GriLab вне форума
Начинающий
 
Регистрация: 26.11.2010
Адрес: Минск
Сообщения: 190
Версия Delphi: XE 15.0.3890
Репутация: 415
По умолчанию Проблемы кодировки с Indy 10.5.7

Доброго времени суток!

Возникает проблема кодировки русских символов при использовании компонентов Indy 10.5.7, как я знаю в более ранних версиях было все ОК

Использую компонент TIdHTTPServer. Клиент при запросе страницы видит "козяблики", вместо русского текста . Как исправить данную проблему?

Вод код сервера, если он чем-то может помочь:

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TWebServerForm.HTTPServerCommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var
  RequestFileName, IndexFileName: String;
begin
  AResponseInfo.Server := 'ncm_web_server';
  AResponseInfo.CacheControl := 'no-cache';
  RequestFileName := AnsiLowerCase(ARequestInfo.Document);
  try
    if RequestFileName = '/' then RequestFileName := '/index.php';
    if FileExists(ncm_WebSitePath + RequestFileName) then
    begin
      AResponseInfo.ContentStream := TFileStream.Create(ncm_WebSitePath + RequestFileName, fmOpenRead);
      AddServerEvent('файл "' + RequestFileName + '" успешно отправлен на "' + AContext.Binding.PeerIP + '".');
    end
    else
    begin
      AResponseInfo.ContentStream := TFileStream.Create(ncm_WebPagesPath + 'notfound.php', fmOpenRead);
      AddServerEvent('файл "' + RequestFileName + '" не найден на локальном компьютере.');
    end;
  except
    on E: Exception do
    begin
      AddServerEvent(E.Message);
    end;
  end;
end;

AddServerEvent - это запись текста в лог.

Заранее спасибо!
Ответить с цитированием
  #2  
Старый 01.05.2011, 09:35
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Base64 в помощь.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 01.05.2011, 11:19
Аватар для GriLab
GriLab GriLab вне форума
Начинающий
 
Регистрация: 26.11.2010
Адрес: Минск
Сообщения: 190
Версия Delphi: XE 15.0.3890
Репутация: 415
По умолчанию

Это первая идея, которая пришла в голову.
Но вот только как браузер его расшифрует??? Писать еще и PHP?
Ответить с цитированием
  #4  
Старый 01.05.2011, 11:59
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Ну можно в QuotedPrintable.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #5  
Старый 01.05.2011, 16:44
Аватар для GriLab
GriLab GriLab вне форума
Начинающий
 
Регистрация: 26.11.2010
Адрес: Минск
Сообщения: 190
Версия Delphi: XE 15.0.3890
Репутация: 415
По умолчанию

MADMAN, посмотрел что это такое. Если страница большая , т.е. на ней много русского текста, то это будет ппц тормоза.
Ответить с цитированием
  #6  
Старый 01.05.2011, 17:04
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Ты не пробовал перекодировать, например, в КОИ-8R или еще в какую-либо кодировку?
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #7  
Старый 02.05.2011, 08:05
Аватар для GriLab
GriLab GriLab вне форума
Начинающий
 
Регистрация: 26.11.2010
Адрес: Минск
Сообщения: 190
Версия Delphi: XE 15.0.3890
Репутация: 415
По умолчанию

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

Последний раз редактировалось GriLab, 02.05.2011 в 08:53.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:35.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025