Einzelnen Beitrag anzeigen

H.Bothur

Registriert seit: 25. Jun 2012
Ort: Seevetal & Lagos
257 Beiträge
 
Delphi 11 Alexandria
 
#1

.self oder nicht (aus "SMTP über Strato")

  Alt 3. Jan 2023, 18:56
Moin,

ich trenne das Thema mal aus meinem SMTP-Thread raus um das ganze nicht zu verwässern:

Zu Post 1.

Wer innerhalb einer Klasse (TMailForm) auf die "vermeintlich" richtige globale Variable (MailForm) zugreift,
der gehört irgendwann mal dafür vollkommen zu Recht bestraft.

-> Weglassen (sowas macht man niemals nicht) oder Self benutzen.
Moin Himitsu,

das sagst Du mir schon seid Jahren - und ich glaube Dir (wirklich) auch, aber ...

Delphi-Quellcode:
procedure Verbinden;
begin
  Form1.IdSMTP1.AuthType := satDefault; // simpler Login ohne Authentifizierung
  Form1.IdSMTP1.Host := 'smtp.strato.de';
  Form1.IdSMTP1.Port := 465;
  Form1.IdSMTP1.UseTLS := utUseRequireTLS; // mit SSL -> Port dann in aller Regel 587
  usw.
-> Keine Fehlermeldung

Delphi-Quellcode:
procedure Verbinden;
begin
  IdSMTP1.AuthType := satDefault; // simpler Login ohne Authentifizierung
  IdSMTP1.Host := 'smtp.strato.de';
  Form1.IdSMTP1.Port := 465;
  Form1.IdSMTP1.UseTLS := utUseRequireTLS; // mit SSL -> Port dann in aller Regel 587
  usw.
-> da werden sofort die ersten beiden als fehlerhaft markiert.
Erste Zeile: E2003 undeklarierter Bezeichner "IdSMTP1" in Zeile 88
Zweite Zeile: E2066 Operater oder Seikolon fehlt in Zeile 89

Delphi-Quellcode:
procedure Verbinden;
begin
  self.IdSMTP1.AuthType := satDefault; // simpler Login ohne Authentifizierung
  self.IdSMTP1.Host := 'smtp.strato.de';
  Form1.IdSMTP1.Port := 465;
  Form1.IdSMTP1.UseTLS := utUseRequireTLS; // mit SSL -> Port dann in aller Regel 587
  usw.
-> da werden sofort die ersten beiden als fehlerhaft markiert.
erste Zeile: E2003 undeklarierter Bezeichner "self" in Zeile 88
Erste Zeile: E2066 Operater oder Seikolon fehlt in Zeile 89
Zweite Zeile: E2066 Operater oder Seikolon fehlt in Zeile 89

Und jetzt weiß ich nicht woran das liegt ... aber das es eben mit dem "Form1." oder in dem anderen Fall dem "MailForm." davor klappt !
Wenn Du mir aber sagen kannst was ich falsch mache dann lerne ich es endlich ! Und das soll jetzt keine Verar*** sein sondern wirklich der Wille zu verstehen was ich falsch mache.

Gruss
Hans
Hans-Georg Bothur
www.hermann-juergensen.de
  Mit Zitat antworten Zitat