Problem w kodzie ? Pomocy

0

a wiec tak, wrzucilem na forme komponenty IdMessage, IdSMTP, IdAntiFreeze i buttona 1

w kodzie buttona dodalem:

IdMessage1.Body.Append('Memo1.Text');
IdMessage1.Recipients.EMailAddresses := '[email protected]';
IdMessage1.Subject := 'TEMAT';
IdMessage1.From.Name := 'alayah';
IdMessage1.From.Address := '[email protected]';
idSMTP1.Password := 'moje haslo';
idSMTP1.Username := '[email protected]';
idSMTP1.Host := 'smtp.poczta.o2.pl';
IdSMTP1.Connect;
try
  IdSMTP1.Send(IdMessage1);
finally
  IdSMTP1.Disconnect;
end;

i wywala mi blad gdy wciskam w zdebugowanym juz projekcie Socket Error #11004

0

A spróbuj to:

begin

 try
 idMessage1.CharSet:='charset="iso-8859-2"';  //ustawiamy kodowanie
  idMessage1.ContentTransferEncoding:='8bit';  // przesyłanie 8bitowe
  idMessage1.ContentType:='text/html';  // przesyłamy tekst
  idMessage1.Body:=Richedit1.Lines;  // treść maila z Memo1



  // ustawienia wiadomości

  //idMessage1.From.Address := 'adres email'; // od kogo
  idMessage1.From.name := 'np. imie';

  idMessage1.Subject := Edit1.Text; //temat
  idMessage1.Recipients.EMailAddresses :='adres email 2';

 

  // weryfikacja

  idSMTP1.UserName := 'login';
  idSMTP1.Password := 'haslo';
  idSMTP1.Host := 'serwer';



  //wpisz gdy serwer nie wymaga uwierzytelnienia

  idSMTP1.AuthenticationType:=atNone;



  //wpisz gdy serwer wymaga uwierzytelnienia (zalecane)

  idSMTP1.AuthenticationType:=atLogin;

  idSMTP1.Connect;
  idSMTP1.Send(idMessage1);

  idSMTP1.Disconnect;

 except
  ShowMessage('Błąd. Mail nie został wysłany');
 end;

end;
0

Socket Error #11004

czyli

{11004} 'Valid name, no data record of requested type',

czyli coś nie tak z adresem, prawdopodobnie serwera smtp.

0

Może winne jest to, że serwer wychodzący poczyt na o2.pl działa na porcie 587.
A poza tym po co używać takiego molocha jak Indy do wysłania emaila, ja nadal
będę się upierał przy swoim i polecał Synapse. Pobierasz caly pakiet, do katalogu
z projektem wypakowujesz następujące pliki i dodajesz smtpsend do sekcji uses.

blcksock.pas
smtpsend.pas
sswin32.pas
synacode.pas
synafpc.pas
synaip.pas
synautil.pas
synsock.pas

Resztę załatwi poniższy kod. A jak nadal chcesz się babrać w Indy to pod adresem
poniżej masz paczkę przykłądów jest tam przykład MailClient i go przeanalizuj. No
a kod w Synapse będzie wyglądal tak. Jak zależy Tobie tylko na prostym wysłaniu:

  if SendToEx('[email protected]', '[email protected]', 'Temat', 'poczta.o2.pl:587', Memo1.Lines, 'user', 'pass') = True then
  begin
    ShowMessage('Wysłane OK.');
  end
  else
  begin
    ShowMessage('Jakiś błąd!');
  end;

Różne przykłady użycia komponenentów z pakietu Indy:
http://www.speedyshare.com/files/22586299/indy9demos_26oct04.zip

0

Chodzi mi o to zebym mogl wysylac z programu maile na rozne poczty (o2, wp, gmail itp) i zeby pisalo ze zostala wyslana wiadomosc od MateuszeQ Production's i najlepiej ze od maila [email protected] o ile sie tak da, bardzo tego potrzebuje

0

Sorki za spam, ale chce wysylac mail aby ktos go otrzymywal i pisalo ze od MateuszeQ Productions, i jak zrobic zeby bylo ze email doszedl od [email protected] ?

mam własna produkcje grafiki i chce wysylac takie maile jak to zrobic

0

No to masz ode mnie przykład. Jak chcesz wysyłać emaile z gmaila przy użyciu Synapse,
to potrzebujesz chyba bibliotek do SSL i innego kodu - lecz tym się raczej nie bawiłem.

0

Olesio zrobilem z twoim synapse ale wywala "wystapil blad" a wszystk dobrze zrobilem

0

Na o2.pl ten kod działa, ale tam gdzie nadawca prawdopododobnie trzeba podac prawdziwy adres.
Ja ten kod testowałem nie raz odpisując na posty z pytaniem o wysylanie emaili, także na o2.pl z
pewnością działa, bo zamnieniłem adresy nadawcy i docelowy oraz usera z hasłem, na to poniżej.

0

Od rana proboje i ciagle problemy z smtp hostem :( wykoncze sie..
sciaglem nawet zrobiony juz program z mozliwoscia wysylki zalacznika ale ciagle bledy i bledy o socket error gdy wpisuje smtp.poczta.o2.pl lub poczta.o2.pl .. czy moglby ktos dla mnie napisac ten programik? zeby mozna bylo wysylac na podany adres email zalacznik i pole na wpisanie swojego maila , blagam

0

No to niemal napisałem za Ciebie przykład z Synapse, tylko to bez załącznika.
Ale w pakiecie Synapse są oprócz dokumentacji są przykłady, do Indy też pod
linkiem jaki podałem. Jak użyjesz jako hosta poczta.o2.pl i portu 587 to Indy
też wyśle. Sprawdź przykład MailClient w paczce, do której link podałem. Bo z
tego co sprawdziłem to ów kod działa i można dołączać załączniki. Przerób go
sobie według potrzeb i będziesz miał gotowego "wysyłacza" - jakiego chcesz,
a Ty nawet pewnie nie szukałeś bo pierwszy wynik w google po wpisaniu słów
delphi mail attachment http://delphi.about.com/od/indy/a/email-send-indy.htm
gotowy klient, sprawdziłem i z poczta.o2.pl działa. Trzeba sobie tylko dodac na
formatkę pola do hasła i pordu oraz zmienić sposób autoryzacji, ale to banały i
z tym sobie poradzisz sam. I na przyszłośc szukaj w googlach zanim zapytasz.

0

olesio zrobilem jak mowiles i wyskakuje mi "Socket Error" jezeli uzyje smtp.poczta.o2.pl a jak uzywam poczta.o2.pl to ze wymaga uwierzetelnienia :(

0

U mnie wszystko działa. EMail wysłany sam do siebie na o2.pl dotarł z załącznikiem oraz resztą tak jak trzeba.
A jak coś, to pod adresem: http://www.delphigroups.info/2/2/258061.html - jest krótki przykład dla Synapse.

0

Bo ty nawet nie wiesz jak ustawić parametry do wysłania poczty.

A ważne przy wysyłaniu z o2.pl jest:
port: 587
uwierzytelnienie
login typu: [email protected]
serwer: poczta.o2.pl (a nie jakieś tam smtp.poczta.o2.pl)

0

MateuszeQ: nie mogłem spać i napisałem to co poniżej. Wzorowałem się na kodzie Miśkad z
tematu http://4programmers.net/Forum/443341 tylko że nie ogarnąłem w
jaki sposob na pewno prawidlowo pokazać postęp to zrezygnowałem z tego i tak załaczniki
pewnie nie będziesz chyba wysyłal gigantyczne, a wysyłanie zawsze można przerwać, a jak
pewnie widzisz nic skomplikowanego ten kod, wystarczyło chwilę poszukać, pomyśleć, lecz
tak to już z wieloma ludźmi na tym forum jest, że czekają tylko na gotowca i ja się muszę
nad takimi często litować. Link do pliku będzie aktywny przez 7 dni od ostatniego pobrania.
http://www.speedyshare.com/files/22612068/wysylanie_emaili.rar
Możesz sobie z kodem robić co chcesz, ale wspomniaj o autorze oryginału w About jak coś.
Możesz sobie pozmieniać co tam Tobie będzie potrzebne lub dorobić. Wszystkie moduły sa
dołączone do projektu, ktory bez problemów wysyła z konta na poczta.o2.pl i dodatkowo
do sprawdzenia poprawności adresu e-mail (nie jest to idealne, lecz lepsze niż nic) używa
modułu do wyrażen regularnych, a do sprawdzenia czy jest połączenie z Internetem używa
modułu dping, ktory jest na 4p i pinguje trzy razy po IP adres Wirtualnej Polski, ale jak takie
rozwiązanie Tobie nie odpowiada to je sobie usuń. Nazewnictwo zmiennych, stałych, a także
funkcji oraz procedur i komponentów jest jako tako "in inglisz" No to tyle. Pora na... sen :)

EDIT: poprawiłem jedną małą rzecz w kodzie czyli wywołanie OnChange Editów w OnCreate.

1 użytkowników online, w tym zalogowanych: 0, gości: 1