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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ICS и thread pop запрос, Одновременных несколько запросов на pop 
:(
    Опции темы
Rodeon
Дата 29.8.2008, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



В интернете и на форуме есть материал по многопоточный пример использования ICS-совского пинга.
Можно ли реализовать на основе ICS компонентов многопоточную проверку почты!
На данный момент все раболтает через Indy в один поток и все слишком медленно, а имееться несколько ящиков!
В общих чертах может кто подскажет как это реализовать через ICS если возможно конечно!
Заранее спасибо за ответ!
PM MAIL   Вверх
SneG0K
Дата 29.8.2008, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Max Mara
***


Профиль
Группа: Завсегдатай
Сообщений: 1887
Регистрация: 1.12.2007
Где: Wis Dells

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



Возможно... Создавай сколько нужно потоков, в каждом потоке динамически создавай компонент через который ты собрался проверять почту и выводи результат...
PM WWW Skype   Вверх
Rodeon
Дата 29.8.2008, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Так вот в этом то и загвоздка!
Раньше подключался к почте через indy:
Код

MainForm.POP3.Port:=110;
MainForm.POP3.Host:=temp;
MainForm.POP3.Username:=temp;
MainForm.POP3.Password:=temp;
MainForm.POP3.Connect;
if mainform.POP3.Connected then begin
----забираем почту-----
MainForm.POP3.Disconnect;

Перешел на ICS:
Код

pop3Cli.Host:='pop.mail.ru';
pop3Cli.Port:=110;
pop3Cli.UserName:='';
pop3Cli.PassWord:='';
pop3Cli.Connect;
if SyncPop3Cli.Connected then
----забираем почту-----

Это создание многопоточного запроса на пинг адреса:
Код

procedure TForm1.doPingClick(Sender: TObject);
var
    I, T: integer ;
begin
    T := HostNames.Lines.Count ;
    if T = 0 then exit ;
    if Sender = doPing1 then T := 1 ;
    LogWindow.Lines.Add ('') ;
    for I := 0 to Pred (T) do
    begin
        if HostNames.Lines [I] <> '' then
        begin
            with TPingThread.Create (True) do   // create suspended
            begin
                PingAddThread (ThreadId) ;      // keep threadid so it's freed
                FreeOnTerminate := True;
                PingId := succ (I) ;            // keep track of the results
                OnTerminate := PingThreadTermPing ;    // where we get the response
                PingHostName := HostNames.Lines [I] ;  // host name or IP address to ping
                PingTimeout := 4000 ;           // ms
                PingTTL := 32 ;                 // hops
                PingLookupReply := false ;      // don't need response host name lookup
                Resume ;                        // start it now
            end ;
        end;
    end ;
end;



Так вот я и не могу связать эту многопоточность с  ICS.
Кто-нибудь бы пример выложил или исходник процедуры как запрос в потоке отправлять!

Это сообщение отредактировал(а) Rodeon - 29.8.2008, 17:25
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

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

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

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

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

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


 




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


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

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