Inhalt der edtFelder per mail?
-
also ich habe jetzt alles getan wie es bei deinem link steht...
ich probiere mit dem code aus://--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { IdSMTP1->Host="mail.gmx.net"; } //---------------------------------------------------------------------------und es sagt mir dass IdSMTP1 undefiniert sei....bitte um weiter Hilfe
Danke im voraus..eigentlich will ich doch nur dass ich einfach eine mail an meinm hotmail account bekomme wenn zwei edit felder gefüllt sind und auf einem button geklickt wurde :S
das wird immer komplizierter
naja was solls ist ja auch die programmierspracheMfG
Darkman
-
Hallo
Die fehlermelduing sagt nur aus, das in deinem Form kein Member namens IdSMTP1 existiert. Du must nacm den erfolgreichen Setup von Indy in deinem eigenen Projekt noch eine Komponente vom Typ TIdSMTP aus der Palette Indy Sockets auf dein Form setzen. Diesem kannst du dann wie ein TEdit einen Namen geben, und auch die wichtigen Kenndaten wie die Hostadresse an die entsprechenden Eigenschaften über den Objektinspektor übergeben.
bis bald
akari
-
soo danke bis hier hin

das mit komponenten habe ich jetzt hinbekommen...
hier das code habe noch problem...void __fastcall TForm1::IdSMTP1Connected(TObject *Sender) { IdSMTP1->Username="*******"; //wozu dient das? IdSMTP1->Password="*******"; //und das? IdMessage1->From->Text="umarnaz@hotmail.com"; IdMessage1->Sender->Text="Eigener Name"; IdMessage1->Recipients->EMailAddresses="umarnaz@hotmail.com"; IdMessage1->Subject="Test"; TStringList *body=new TStringList(); body->Add("Hallo"); IdMessage1->Body=body; try { IdSMTP1->Connect(); IdSMTP1->Send(IdMessage1); IdSMTP1->Disconnect(); } catch(...) { Application->MessageBox("Fehler beim Versenden der Nachricht","Mail",MB_OK|MB_ICONSTOP|MB_SYSTEMMODAL); } delete body; }es sagt folgende fehlermeldung:
[C++ Error] Unit1.cpp(40): E2193 Too few parameters in call to '_fastcall TIdSMTP::Connect(const int)'
was soll in diese funktion rein :S?danke bis jetzt...vielen dank

-
In Deinem Code kann ich auf die schnelle keinen Fehler finden. Sinnlos ist aber das ganze in das Connected-Event zu schreiben, da Du bereits mit dem Server verbunden bist.
-
wie gesagt ich kenne micht damit noch net so gut aus...
habe diesen code von dieser seite:
http://www.marquardtnet.info/cecke/quickies.1/1_quicky_44.html
-
Habe den Code der Seite probiert und es funktioniert einwandfrei auf BCB6.
Aber auf der HP steht nirgendwo etwas davon, dass man den Source in OnConnected schreibt. Suche ein sinnvolles Event wie OnCreate oder ein Buttonklick.Bei UserName und Passwort müssen natürlich Deine persönlichen Daten stehen und nicht die Sterne!

-
so
habe es auf nem button funktion onclick umgesetzt...jedoch kriege ich die gleiche fehlermeldung :S
ich habe borland c++ builder 5...
und ja ich weiss dass anstatt sternchen meine email addresse kommt ich will sie ja net euch verraten hehe
-
Fällt was auf?
IdSMTP1->UserId="";
IdSMTP1->Password="*******";
IdSMTP1->Username=""; // Indy 9 BCB 2006 vorher IdSMTP1->UserId
IdSMTP1->Password="*******";Habe Deinen Code auch getestet und der funktioniert mit UserId statt Username ohne Probleme
BCB6 Enterpr IndyVersion 8.0.25
-
ja das habe ich schon gelesen und ausprobiert geht aber ja net...kriege diese fehlermeldung:
[C++ Error] uTest.cpp(27): E2316 'UserId' is not a member of 'TIdSMTP'
und wegen dieses connect() immer noch diese hier:
[C++ Error] uTest.cpp(40): E2193 Too few parameters in call to '_fastcall TIdSMTP::Connect(const int)'gibt es denn net eine andere lösung und einfachere womit ich nur 2 edit felder per mail zugeschickt bekommen könnte :S
danke schön
-
Einfacher? Vielleicht mit FastNet und NMSMTP:
Alles im Objectinspector einstellen wie UserID und PasswordNMSMTP1->Connect(); NMSMTP1->SendMail();Oder im Examples-Ordner unter FastNet SMTP nachlesen
[Edit]
Es gibt auch noch eine Funktion, die Dein Standartemailprogramm aufruft und dann eine EMail verschickt. - ist aber wenig elegant.
[/Edit]
-
Darkman89 schrieb:
[C++ Error] uTest.cpp(27): E2316 'UserId' is not a member of 'TIdSMTP'
UserId ist in Indy9 eben nicht mehr vorhanden, benutze Username.
[C++ Error] uTest.cpp(40): E2193 Too few parameters in call to '_fastcall TIdSMTP::Connect(const int)'
Kann es sein, dass du verschiedene Indy-Versionen gleichzeitig installiert hast bzw. hattest?
-
hmm ich habe da schon bissi rumgemacht mit diesen komponenten...wusste vorher gar nicht wie man das so kompiliert und so...kann sein ja...
wie kann ich denn alles löschen nd nochmal installieren?
THX
-
soo
ich habe jetzt an einem anderen pc ausprobiert :S :S
es klappt nicht
habe genau diese indy komponente installiert usw aber leider gehts net :S
gibt es net eine andere möglichkeit??
danke
-
Hallo
was geht nicht?
Aus Erfahrung kann ich dir sehr wohl sagen, das Indy9 (aber nicht 10) auf dem Builder läuft. Du machst also was bei Installation falsch.bis bald
akari
-
ja also ich habe ja auch auf zwei pcs indy 9 ausprobiert...
kriege die gleiche fehlermeldung :S
naja grad sind die beiden pcs kaputt ich werde nochmal ausprobieren wenn ich die pcs in gang bringe...ich melde mich dann mal wieder
THX
Darkman
-
Nenne die konkrete Fehlermeldung und zeige den konkreten Code.
Erstelle ein entsprechendes Minimal-Programm und poste den kompletten Quelltext.