NMSMTP Komponente, Probleme beim Verschicken einer EMAIL
-
Servus Leute,
ich hab da ein kleines Problemchen. Ich muss ein EMAIL-Programm schreiben. Das empfangen von Mails ist kein Problem, aber das Versenden.
Wenn ich ne Mail versenden möchte tritt folgender Fehler auf:Im Projekt xxx.exe ist eine Exception der Klasse Exception aufgetreten. Meldung: '544 no valid recipients'.
void __fastcall TForm3::Action1Execute(TObject *Sender) { NMSMTP1->PostMessage->ToAddress->Add(LabeledEdit1->Text); NMSMTP1->PostMessage->ToCarbonCopy->Add(LabeledEdit2->Text); NMSMTP1->PostMessage->ToBlindCarbonCopy->Add(LabeledEdit3->Text); NMSMTP1->PostMessage->Subject = LabeledEdit4->Text; NMSMTP1->PostMessage->Attachments->AddStrings(ListBox1->Items); NMSMTP1->PostMessage->Body->Assign(Memo1->Lines); if (LabeledEdit1->Text !="" ) { if (!NMSMTP1->Connected) NMSMTP1->Connect(); NMSMTP1->SendMail(); Form3->Hide(); } else ShowMessage("Sie müssen eine Empfängeradresse angeben!"); }und so sieht der Code aus.
Kann mir einer weiterhelfen warum die verfluchte Email nicht raus gehen will. Ich verwende dafür die NMSMTP Komponente.
Freue mich über jede Anregung.
Gruß aus der Eifel
Michael
-
wo hast du den server,port?
NMSMTP1->Host="smtp.....com"; NMSMTP1->UserID="anmeldename"; NMSMTP1->Port=25; //oder 587Gruß myerscola
-
Danke für die Rückmeldung. Hab diese Einstellungen im Objektinspektor vorgenommen.
Jetzt hab ich mal nen Gedanken gefasst. Bei Outlook muss ich angeben, dass ich beim Empfangen UND Senden ein Passwort benötige.Das kann ich ja gar nicht dann so mit der Komponente realisieren oder seh ich das falsch.
-
Richtig, die Komponente kann das nicht, ist aber bei vielen Providern auch nicht nötig, da die Pop3-Anmeldung zum verifizieren benutzt wird und bei Erfolg der SMTP für eine gewisse Zeit offen ist.
Wenn Du speziell den Port 587 benutzen willst brauchst Du meistens eine eigene Anmeldung, dann kannst Du den SMTP-Client der Indy-Komponenten benutzen.Gruß myerscola