C++Builder
  Начало   Форум   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема с PostMessage и/или SendMessage  (Прочитано 1442 раз)
ДмитрийЛАСТ
Участник


Сказали спасибо: +3/-0
Offline

Сообщений: 11


Проблема с PostMessage и/или SendMessage
« : 05 Июнь 2015, 18:28:03 »

Доброго времени суток уважаемые форумчане!

Пишу программу, которая имея 10 потоков должна осуществлять парсинг сайтов.
Собственно, она это вроде делает. Но возникает несколько вопросов. Прошу помочь
Например, вот этот кусочек:
Код:
TIdHTTP *httpBrowse = new TIdHTTP(NULL);
try {
httpBrowse->Get(resultetiveStroka);
String Result = httpBrowse->Response->ResponseText;
String PoleRec_5 = "PoleRec_5=" + Result + ";";
String PoleRec_6 = "PoleRec_6=Получен;";
String PoleRec_7 = "PoleRec_7=4;";
String stResult_ThT = tempText + tempURL + PoleRec_2 +
  PoleRec_3 + PoleRec_7 + PoleRec_4 +
  PoleRec_5 + PoleRec_6;
if (oneg_T) {
if (numberText == 0) {
                        MasivOneGlav->Add(resultetiveStroka);
}
}
*stResult_Th = stResult_ThT;
SendMessage((HWND)ResultFormThread_T, WM_HANDLE_THREAD_M2, 0, (LPARAM)stResult_Th);

Должен передавать информацию о найденной ссылке. Таких кусочков несколько.
Так вот вопрос, почему SendMessage в данном случае иногда возвращает абракадабру?
PostMessage выдает нормально. Но, использовать PostMessage почему-то не получается, если требуемых к проверке сайтов очень много. Максимум 100 проверит и все. Ничего более программа не делает.
Код в главной форме:
Код:
void __fastcall TGlav_Form::HANDLE_THREAD_M2(TMessage &S_Message)
{
String forError;
try {
String stResult = *(String *)S_Message.LParam;
delete (String *)S_Message.LParam;

//Парсинг строки
std::string stdLineNT(AnsiString(stResult).c_str());
std::string stdownerNT = "numberText=";
int jNT = stdLineNT.find(stdownerNT);
AnsiString itogovaNT = "";
char *lastsymbolNT = AnsiString(stResult).c_str();
char *skobkaNT = ";";
int nnNT = strlen(lastsymbolNT);
for (int i = jNT + 11; i if (lastsymbolNT[i] != *skobkaNT) {
itogovaNT = itogovaNT + lastsymbolNT[i];
}
else break;
}
...
Заполняется далее VirtualTreeView
Записан
ДмитрийЛАСТ
Участник


Сказали спасибо: +3/-0
Offline

Сообщений: 11


Re: Проблема с PostMessage и/или SendMessage
« Ответ #1 : 06 Июнь 2015, 07:17:31 »

Здравствуйте!
Я так понял PostMessage или SendMessage использовать все-равно?
Подскажите, как настроить IdHttp.
Записан
S0mbre
Глобальный модератор


Сказали спасибо: +1113/-22
Offline

Сообщений: 2132

S0mbre


« Ответ #2 : 24 Июнь 2015, 09:53:45 »

Цитата: ДмитрийЛАСТ от 06 Июнь 2015, 07:17:31
Здравствуйте!
Я так понял PostMessage или SendMessage использовать все-равно?
Подскажите, как настроить IdHttp.

PostMessage посылает сообщение асинхронно, т.е. не ждет ответа. SendMessage посылает синхронно, ждет ответа.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  




....

Powered by SMF 1.1.21 | SMF © 2025, Simple Machines
Страница сгенерирована за 0.059 секунд. Запросов: 21.