помогите с программой на C++ builder
помогите пожалуйста, программа-имейл клиент, но почему она работает только с mail.open.by почтой, а например с mail.ru или другими известными не хочет, выдает ошибку socket error #10061 Connection refused. Хотя бы намекните, если уж сложно помочь исправить, где ошибка?
вот код:
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Lines->Clear();
IdSMTP1->Host=Edit1->Text;
IdSMTP1->UserId=Edit2->Text;
IdSMTP1->Password=Edit3->Text;
IdSMTP1->Connect();
NMPOP31->Host=Edit1->Text;
NMPOP31->UserID=Edit2->Text;
NMPOP31->Password=Edit3->Text;
NMPOP31->Connect();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::NMPOP31Connect(TObject *Sender)
{
Memo1->Lines->Add("Соединение! ");
int MC=NMPOP31->MailCount;
Memo1->Lines->Add("Писем: "+IntToStr(MC));
AnsiString fr;
if (MC)
{
for (int t=1; t<=MC; t++)
{
Application->ProcessMessages();
NMPOP31->GetSummary(t);
fr = NMPOP31->Summary->From;
ComboBox1->Items->Add(fr);
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
AnsiString subj;
int tt=ComboBox1->ItemIndex+1;
Application->ProcessMessages();
NMPOP31->GetSummary(tt);
subj = NMPOP31->Summary->Subject;
Memo1->Lines->Clear();
Memo1->Lines->Add(subj);
NMPOP31->GetMailMessage(tt);
TMailMessage *mess=NMPOP31->MailMessage;
TStringList *s=mess->Body;
Memo1->Lines->AddStrings(s);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
IdSMTP1->Disconnect();
NMPOP31->Disconnect();
Memo1->Lines->Clear();
Memo1->Lines->Add("Соединение завершено! ");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
IdMessage1->Subject=Edit5->Text;
IdMessage1->From->Address=Edit2->Text;
IdMessage1->Body->Text=Memo2->Text;
IdMessage1->Recipients->EMailAddresses=Edit4->Text; //Получатель
IdSMTP1->Send(IdMessage1);
}
//---------------------------------------------------------------------------
И исполняющий файл:
#include
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------
P.S. например [ссылка заблокирована по решению администрации проекта] выдает error #10060 Connection timed out, пожалуйста помогите исправить