Results 1 to 11 of 11

Thread: NLDMailOut

  1. #1

    NLDMailOut

    ------------
    De sources van NLDDanyUtils zijn te vinden in:
    ftp://ftp.nldelphi.com/public/OpenSo.../NLDDanyUtils/
    ------------

    Utilities om gemakkelijk vanuit je Delphi programma's mail te kunnen versturen. Gebruikt "Indy" (versie 9 of compatibel) en NLDSmtpSetup (zie hieronder).

    De interface:
    Code:
    procedure SetMailOutParams(Host, Port: string; Auth: TAuthenticationType; Id,
      Pw: string);
    
    procedure SetMailOutAddresses(From, Answer: string);
    
    procedure SendMail(Subject, Towards: string; Body: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil);
    overload;
    
    procedure SendMail(Subject, Towards: string; Body: string;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil);
    overload;
    
    procedure SendMail(Subject: string; Towards: Tstrings; Body: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil);
    overload;
    
    procedure SendMail(Subject: string; Towards: Tstrings; Body: string;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil);
    overload;
    De eerste twee hoef je niet noodzakelijk te gebruiken. Enkel als je wil afwijken van wat je hebt ingesteld met NLDSmtpSetup heb je ze nodig.
    Last edited by Dany; 23-Nov-06 at 19:24.

  2. #2
    Als ik via jou SMTPSetup en MailOut files een mailtje verstuur, dan krijgt de ontvanger een e-mailtje waaraan je niet kan zien van wie hij af komt
    Check out ackspace.nl for a dutch hackerspace

  3. #3
    Senior Member
    Join Date
    Oct 2003
    Location
    De pinte BE
    Posts
    183
    Euh : in die ftp directory is niets terug te vinden ?
    Waarom voel ik me hier zo klein

  4. #4
    @eagle00789:

    Heb je het "E-mail adres" adres wel degelijk ingevuld in het SMTP setup scherm?


    @picasso12:

    In die ftp directory staat (een of meerdere versies van) een zip file die alle "NLDDanyUtils" bevat. Als je in de laatste versie kijkt zou je daar normaal "NLDMailOut.pas" en "NLDMailOut Example" moeten aantreffen. Als het niet lukt dan stuur ik je de files wel op via e-mail.
    Vriendelijke groeten,
    Dany

  5. #5
    Ja dat heb ik wel degelijk gedaan, maar toch blijft het vak waarin staat van WIE het mailtje afkomt (van mij dus) blijft leeg
    Check out ackspace.nl for a dutch hackerspace

  6. #6
    @eagle00789:

    Hm.
    Wil je even een breakpoint zetten op de regel "IdSMTP1 := TIdSMTP.Create(nil);" in de procedure Sendmail (zie hieronder) en de variabelen "SMTPFrom" en "MailAddressesInitialized" bekijken? Alvast bedankt...

    Code:
    procedure SendMail(Subject, Towards: string; Body: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil);
    var
      Mess: TIdMessage;
      IdSMTP1: TIdSMTP;
      I: word;
    begin
      InitParams; { get SMTP settings }
      InitAddresses; { get own addresses }
    
      IdSMTP1 := TIdSMTP.Create(nil);  // <===== graag hier een breekpunt zetten
      try
      ...
    Voor alle zekerheid: het e-mail adres dat ik bedoelde id dat onderaan op het SMTP setup scherm (daar waar "Hier!!!" staat in het attachment):
    Vriendelijke groeten,
    Dany

  7. #7
    Het attachment is:
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	image001.jpg 
Views:	392 
Size:	19.9 KB 
ID:	1825  
    Vriendelijke groeten,
    Dany

  8. #8
    @eagle00789:

    En? Al eens gedebugd? Wat was er fout? (Ikzelf kan het niet reproduceren )

    p.s. Je kan ook "- SetMailOutAddresses(From, Answer: string);
    " gebruiken om de 'verzender' en de 'reply' mailaddressen te zetten...
    Last edited by Dany; 26-Jul-04 at 21:25.
    Vriendelijke groeten,
    Dany

  9. #9
    Vriendelijke groeten,
    Dany

  10. #10
    Hoi, er is een nieuwe versie die het SMTPSetup form niet meer gebruikt. Inplaats daarvan worden de SMTP setup waarden rechtstreeks uit de registery gelezen (zijn daar wel bv gezet door 'SMTPSetup'). Er is een extra unit vereist met de registry key waar de smtp waarden staan (SMTP_Register.pas). Die laatste wordt nu ook gebruikt door SMTPSetup.pas uiteraard.

    De nieuwe interface:
    Code:
    procedure SetMailOutParams(Host, Port: string; Auth: TAuthenticationType; Id,
      Pw: string);
    
    procedure SetMailOutAddresses(From, Answer: string);
    
    procedure Recall_Default_MailOut_Params_and_Addresses;
    
    function SendMail(Subject, Towards: string; Body: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    function SendMail(Subject, Towards, Body: string;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    function SendMail(Subject: string; Towards: Tstrings; Body: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    function SendMail(Subject: string; Towards: Tstrings; Body: string;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    implementation
    De nieuwe extra unit SMTP_Register:
    Code:
    unit SMTP_Register;
    
    interface
    
    const
      SmtpRegister = 'Software\Rcs\Smtp\'; // Uw key komt hier
      
    implementation
    
    end.
    Vriendelijke groeten,
    Dany

  11. #11
    Weer een nieuwe versie:
    Code:
    interface
    
    uses
      Classes, IdSMTP;
    
    procedure SetMailOutParams(Host, Port: string; Auth: TAuthenticationType; Id,
      Pw: string);
    
    procedure SetMailOutAddresses(From, Answer: string);
    
    procedure Recall_Default_MailOut_Params_and_Addresses;
    
    function SendMail(Subject, Towards: string; Body_: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    function SendMail(Subject, Towards, Body_: string;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    function SendMail(Subject: string; Towards: Tstrings; Body_: TStrings;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    function SendMail(Subject: string; Towards: Tstrings; Body_: string;
      CC: string = ''; BCC: string = ''; Attachments: TStrings = nil): Boolean;
    overload;
    
    implementation
    Eindelijk is ook het probleem met de attachments opgelost (dankzij http://www.indyproject.org/Sockets/B...8_17_A.EN.aspx)

    Er is nu ook een versie voor Indy 10 (zie https://svn.apada.nl/svn/NLDelphi-op.../nlddanyutils/).
    Last edited by Dany; 30-Jul-18 at 17:32.
    Vriendelijke groeten,
    Dany

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •