Witam, jestem nowy na forum i od niedawna uczę się delphi (znam podstawy C++ oraz C#)
Próbuje już od 3 dni napisać prostą funkcję wysyłającą e-mail opierając się o komponenty INDY. Czytałem już wiele tematów i poradników i jak na razie mam to:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
//czyszczenie zawartości komponentu IdMessage
IdMessage1.Clear;
//ustawienie adresu IP/nazwy serwera
IdSMTP1.Host := 'smtp.gmail.com';
IdSMTP1.Port := 587;
//ustawienie nazwy użytkownika
IdSMTP1.Username := '[email protected]';
//ustawienie hasła użytkownika
IdSMTP1.Password := '********';
//ustawienie trybu authentifikacji
IdSMTP1.AuthenticationType := atLogin;
if not IdSMTP1.Connected then
begin
try
StatusBar1.SimpleText := 'Zestawianie połączenia z serwerem ...';
//nawiązywanie połączenia
IdSMTP1.Connect(-1);
StatusBar1.SimpleText := 'Połączony ...';
showmessage('polaczony');
except
on exception do
begin
StatusBar1.SimpleText := 'BŁĄD !!! Wysyłanie poczty !!! Polączenie z serwerem '
+ IdSMTP1.Host + ' niepowiodło się !!!';
end;
end;
end;
if IdSMTP1.Connected then
begin
//dodanie informacji od kogo
IdMessage1.From.Text := '[email protected]';
//dodanie tematu
IdMessage1.Subject := 'temat';
//dodanie adresu odbiorcy
IdMessage1.Body.Append('tresc');
IdMessage1.Recipients.EMailAddresses := '[email protected]';
StatusBar1.SimpleText := 'Wysyłanie wiadomości ...';
try
//wysyłanie wiadomości
IdSMTP1.Send(IdMessage1);
StatusBar1.SimpleText := 'Wiadomość wysłana.';
//czyszczenie komponentu IdMessage
IdMessage1.Clear;
except
on exception do
begin
showmessage('Błąd przy wysyłaniu wiadomości !!!');
StatusBar1.SimpleText := 'Błąd przy wysyłaniu wiadomości !!!';
//czyszczenie komponentu IdMessage
IdMessage1.Clear;
end;
end;
end;
end;
end.
Program dochodzi mi do momentu wysyłania wiadomości, wywala błąd wysyłania. Prosił bym o info czego mi brakuje albo co robię źle.