Entwickler-Ecke

Internet / Netzwerk - Zum FAQ eMails schicken


Borlox - Mo 28.10.02 23:44
Titel: Zum FAQ eMails schicken
Hi Leute,

ich habe das FAQ ausprobiert und es funktioniert leider nicht? Es gibt immer den Fehler, dass er den HOST als Variable nicht kennt?
Wie kann ich diesen Fehler beheben, oder hat jemand einen funktionierenden Sourcecode?

Danke
Borlox


Ex0rzist - Di 29.10.02 15:26

Hallo Borlox,

poste doch mal bitte deinen Code.

Der Host ist keine Variable, sondern eine Eigenschaft der Komponente.
Deshalb kann ich die Fehlermeldung nicht ganz nachvollziehen.


Borlox - Di 29.10.02 16:12
Titel: Der Code
Hier ist mein Code, den ich beuntzt habe:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
Code: 
unit Unit1; 

interface 

uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
  Dialogs, StdCtrls, IdComponent, IdTCPConnection, IdTCPClient, 
  IdMessageClient, IdSMTP, IdBaseComponent, IdMessage; 

type 
  TForm1 = class(TForm) 
    IdMessage: TIdMessage; 
    IdSMTP: TIdSMTP; 
    Button1: TButton; 
    Memo1: TMemo; 
    Edit_empfaenger: TEdit; 
    Edit_betreff: TEdit; 
    procedure Button1Click(Sender: TObject); 
  private 
    { Private declarations } 
  public 
    { Public declarations } 
    function SendEmail(Recipient:string;CCList:string;sSubject:string;Body:TStringList):boolean; 
  end; 

var 
  Form1: TForm1; 

implementation 

{$R *.dfm} 

function tform1.SendEmail(Recipient:string;CCList:string;sSubject:string;Body:TStringList):boolean; 
var 
  nAlarmnr:integer; 
begin 
idSMTP.Host   := 'smtp.puretec.de'; 
idSMTP.UserID := 'sag ich net ;-)'; 
idSMTP.Password := 'swordfish'; 
idSMTP.Port   := 25; 

idMessage.From.text  :='mail@delphi-forum.de'; 
idMessage.Sender.text:=idMessage.From.text; 

idMessage.Recipients.EMailAddresses:= Recipient; 
idMessage.CCList.EMailAddresses := CCList; 
idMessage.Subject:=sSubject; 

idMessage.Body.Clear; 
idMessage.Body := Body; 

try 
   idSMTP.Connect; 
   idSMTP.Send(idMessage); 
   idSMTP.Disconnect; 
   result:=True; 
   except on E : Exception do 
     begin 
       if idSMTP.connected then try idSMTP.disconnect; except end; 
       result := false; 
     end; 
end; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
var 
  st: TStringList; 
begin 
  st := TStringList.Create; 
  st.Text := memo1.Lines.Text; 
  form1.SendEmail(edit_empfaenger.Text, '', edit_betreff.Text, st); 
  st.Free; 
end; 

end.


Am Anfang gab es immer ein Problem, dass er den HOST nicht als Variable akzeptiert hat und dann habe ich die Sachen einfach in die Komponenten direkt reingeschrieben, aber dann kann er auf einmal nicht einmal mehr connecten und in der Zeile nach dem Connect ist dann auch schon wieder irgendein Fehler!

Borlox


Ex0rzist - Di 29.10.02 16:32

Hallo,

also bei idSMTP.Host   := 'smtp.puretec.de'; meckert er rum?
Wenn man den Host nicht angeben kann, ist die Komponente ja ziemlich sinnlos.

Sonst zeige doch bitte mal, was der Compiler für Fehlermeldungen ausspuckt.