С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
Мы сами всего творцы!
 Аватар для Alexell
60 / 23 / 1
Регистрация: 06.06.2012
Сообщений: 151

? в ответе GET (уже перепробовал все)

06.08.2013, 12:01. Показов 861. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Есть компонент IdHTTP переименованный в Web. Также есть
C++
1
AnsiString Send,Temp;
В Send я собираю по кусочкам адрес для запроса, а в Temp помещаю ответ. И есть функция, в которой запрос происходит:
C++
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//Функция для выполнения GET запроса (с обработками)
void TLoginForm::GetSend()
{
try
{
        try
        {
                Temp=Web->Get(Web->URL->URLEncode(NULL,Send));
                MainForm->DebugLabel->Caption=Web->URL->URI;
        }
        catch(EIdSocketError &E)  // Исключения сокетов
        {
                // Обработка, можно получить код ошибки сокета через E.LastError
                // см.  msdn.microsoft.com/en-us/library/windows/desktop/ms740668%28v=vs.85%29.aspx
                ShowMessage("Ошибка:\n\""+E.Message+"\"");
        }
        catch(EIdHTTPProtocolException &E)
        {
                // Можно получить код ответа сервера  HTTP  через E.ErrorCode
                switch(E.ErrorCode)
                {
                        case 400: ShowMessage("400 Cервер обнаружил в запросе клиента синтаксическую ошибку"); break;
                        case 401: ShowMessage("401 Запрос требует идентификации пользователя."); break;
                        case 404: ShowMessage("404 Страница не найдена"); break;
                        case 200: ShowMessage("500 Внутренняя ошибка сервера"); break;
                        // ... итд полный список кодов смотри ru.wikipedia.org/wiki/Список_кодов_состояния_HTTP
                        default : ShowMessage(String(E.ErrorCode)+" "+E.Message); break;
                }
        }
        catch(EIdException &E)// Другие исключения Indy
        {
                ShowMessage("Ошибка:\n\""+E.Message+"\"");
        }
        catch(Exception &E)   // Другие НЕ Indy искключения
        {
                ShowMessage("Ошибка:\n\""+E.Message+"\"");
        }
}
__finally
{
Web->Disconnect();
}
 
}
Проблема в том, что в Temp всегда вопросики вместо русских букв. Я уже и так и сяк преобразовывать пытался и ничего не помогает, незнаю как уже быть(((

Вчера была проблема с отправкой данных, тоже с русскими буквами, но она решилась до конца, когда сделал URLEncode и в IdHTTP поставил Accept CharSet utf-8 и CharSet.
А вот эту проблему не могу решить никак(((
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.08.2013, 12:01
Ответы с готовыми решениями:

Почему не отображается капча, хотя уже все перепробовал менять
<?php session_start(); $Random = rand(10001, 99999); $_SESSION = md5($Random); $im = imagecreatetruecolor(110, 60); ...

Звук пропал на ПК, - уже "неделю" не найду ни никакой зацепки. Перепробовал все (
Доброго врмени суток господа. Ситуация у меня и моего железного друга весьма не обычная. :scratch: Много раотаю с ПК но , что бы такого -...

Обработчик формы все равно открывает страницу скрипта. Все перепробовал!
Доброго времени суток, уважаемые! Суть такова: На странице есть форма, которая при нажатии кнопки отправляется на обработку...

5
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
07.08.2013, 06:41
сделать Temp типа UnicodeString не пробовали?
1
Мы сами всего творцы!
 Аватар для Alexell
60 / 23 / 1
Регистрация: 06.06.2012
Сообщений: 151
07.08.2013, 10:03  [ТС]
Цитата Сообщение от AntonChik Посмотреть сообщение
сделать Temp типа UnicodeString не пробовали?
Ой нет, щас попробую)

Добавлено через 53 минуты
UnicodeString не находит, надо инклуд наверное какой-то делать,Ю не подскажешь?

Добавлено через 3 минуты
C++ Builder 6
0
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
07.08.2013, 10:10
а если просто браузером сделать запрос, нормальный ответ придет?
0
Мы сами всего творцы!
 Аватар для Alexell
60 / 23 / 1
Регистрация: 06.06.2012
Сообщений: 151
07.08.2013, 10:26  [ТС]
Цитата Сообщение от AntonChik Посмотреть сообщение
а если просто браузером сделать запрос, нормальный ответ придет?
Да, в браузере я нормально в игру играю, а когда из билдера в нее авторизуюсь, получаю вместо русских букв вопросики. Сам попробуй даже без авторизации просто GET сделать: generals.mobi
Только в Builder 6 пробуй, вдруг получится))
0
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
07.08.2013, 10:47
взято здесь
5. Кодировки.

5.1. При загрузке страниц с кодировкой cp1251 русcкие символы отображаются неверно, я предполагаю что это связано с недоработкой Indy в плане совместимости с Юникодом. Поэтому приходится использовать самописные ф-ции вроде этой:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//-----------------------------------------------------------------------
String WinToUnicode(const String St)
{
 String Result="";
 for (int i = 1; i <= St.Length(); i++)
 {
  if (int(St[i])>= 0x00C0 && int(St[i])<= 0x00FF)
    Result += wchar_t(int(St[i])+0x350);
  else Result += St[i];
 }
 return Result;
}
//------------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Text= WinToUnicode( IdHTTP1->Get("http://my.mail.ru/cgi-bin/login?") );
}
//---------------------------------------------------------------------------
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.08.2013, 10:47
Помогаю со студенческими работами здесь

Поставить рандомную матрицу, перепробовал уже много способов. Как поставить?
нужно чтобы матрицу вводил не я после запуска программы,а она сама появлялась с рандомными числами! #include &lt;iostream&gt; ...

ПК не загружается, все перепробовал
Есть комп, установлена windows 7(материнка biostar g41d3, проц celeron e3400) . В один прекрасный день перестала загружаться система,...

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

Нет звука, все перепробовал
нет звука ребят, кто поможет лойс

Какие задать циклы? Все перепробовал !
Вот она участь дилетанта, даю зуб пришлось больше 5 часов посидеть и так своими силами не нашел ответа, надеюсь на вас. Задача в следующем:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru