ActiveX: SLSMTP      (Filnamn: SLSMTP.OCX)
 

    
SLSMTP är en komponent med vars hjälp du kan skicka e-post till andra. Med hjälp av denna komponent kan du på ett enkelt sätt få stöd för e-post i ditt program. Komponenten tillämpar asynkron överföring vilket innebär att mejl kan postas i bakgrunden medan ditt program fortsätter med annat. Kontrollen använder protokollet SMTP vid kommunikationen med e-postservern. Komponenten kan skicka både text- och HTML-mejl. Bilder och ljud kan kodas in i ett  HTML-mejl enligt Base64-metoden.

Vissa e-postservrar kräver POP3-inloggning innan SMTP-tjänster kan utnyttjas. Om den e-postserver du vill kontakta kräver det kan du använda kontrollen SLPOP3 för att utföra detta innan du loggar in till SMTP-servern.

Datatyperna nedan är angivna enligt VB 6.0 standard. I VB.NET ska Integer ersättas med Short (16 bitar) och Long ersättas med Integer (32 bitar). 
 
 
Egenskaper
 
Namn Datatyp Beskrivning
AppendToLog Boolean Om denna egenskap sätts till True så kommer en tidigare loggfil inte att raderas utan nya logg placeras sist i befintlig loggfil. Om denna egenskap sätts till False så kommer tidigare loggfil att raderas när metoden Connect anropas. Egenskapen UseLog måste vara satt till True för att denna egenskap ska vara relevant.
.
Attachment String Här specificerar du bilagor som ska skickas med mejlet. Du anger filsökvägar till de bilagor som ska bifogas. Ska du sända mer än en bilaga måste du separera filnamnen med tecknet "|".
.
BCC String Här anger du en eller flera mottagaradresser (e-postadresser) som ska erhålla en "blind" kopia av mejlet. Med "blind" kopia menas att ingen annan mottagare kan se att en kopia skickats. Används flera e-postadresser separerar du adresserna med ett komma.
.
Body String Skickar du ett vanligt textmeddelande specificerar du texten här.
.
BodyHTML String Skickar du ett HTML-meddelande specificerar du HTML-skripten här.
.
BytesSent Long Innehåller antal bytes som har skickats iväg, dvs meddelandets storlek. Innan denna egenskap kan läsas av måste händelsen SendCompleted ha sänts.
.
Charset String Här specificerar du vilken teckentabell som ska användas till mejlet. Ett par vanligt förekommande teckentabeller är "iso-8859-1" och "windows-1252". Grundinställningen är "iso-8859-1".
.
CC String Här anger du en eller flera mottagaradresser (e-postadresser) som ska erhålla en kopia av mejlet. Används flera e-postadresser separerar du adresserna med ett komma.
.
DocumentFolder String Ifall HTML-dokumentet som ska skickas innehåller bilder och ljud vars sökvägar kan vara relativa måste du här ange sökvägen till dokumentet. Detta är nödvändigt för att de relativa sökvägarna ska tolkas rätt när bilder och ljud ska inkluderas i mejlet.
.
DocumentType Integer Här anger du vilken typ av mejl som ska skickas. 0 = ren text ("text/plain") och 1 = HTML  ("text/html"). Har denna egenskap värdet 0 hämtas body-texten från egenskapen Body. Har denna egenskap värdet 1 hämtas body-texten från egenskapen BodyHTML.
.
FromMailAddr String Här anger du avsändarens e-postadress.
.
FromName String Här anger du avsändarens namn.
.
IncludeObjectsInMail Boolean Om du infogat bilder eller ljud i HTML-skripten och vill att dessa ska kodas in mejlet sätter du denna egenskap till True. Då kommer objekten att kodas in enligt Base64-metoden. Denna egenskap ignoreras om DocumentType har värdet 0.
.
ListUnsubscribe String Ska e-posthuvudet innehålla ett avprenumerationsfält (List-Unsubscribe) kan du specificera dess innehåll via denna egenskap. Egenskapen kan innehålla en webbadress eller en e-postadress. Adressen ska anges mellan ett "<" och ">". Exempel:
"<http://www.mydomain.com/unsubscribe/unsubscribe.aspx?email=test@test.com>"
"<mailto:unsubscribe@mydomain.com?subject=UNSUBSCRIBE>"
Mer information om fältet List-Unsubscribe finns i detta RFC-dokument.
.
MailAddress String Här anger du den e-postadress som ska användas vid inloggning till e-postservern.
.
MailPort Long Här anger du den port hos e-postservern som ska användas till kommunikation. Normalt används port 25.
.
MailServer String Här anger du den e-postserver (SMTP-server) som ska användas för att skicka e-mail.
.
Password String Om den SMTP-server du tänker skicka e-post via kräver autentisering anger du ett lösenord här. Observera att egenskapen UseAuthentication måste vara satt till True för att lösenordet ska användas.
.
ReplyMailAddr String Här anger du en e-postadress dit ett svar på ditt mejl ska skickas.
.
ReplyName String Här anger du ett namn på den som ska erhålla ett svar på ditt mejl. Se även ReplyMailAddr.
.
Subject String Här skriver du in en text som ska visas i ämnesraden.
.
To String Här anger du mottagarens e-postadress.
.
ToName String Här anger du mottagarens namn. Egenskapen kan lämnas tom om namn saknas.
.
TransferEncoding Integer Väljer vilken kodningsmetod som ska användas när e-postmeddelanden skickas. Egenskapen kan ha en av följande värden:
 
  0 - SevenBit ( Använd 7-bitars kodning )
  1 - QuotedPrintable ( Koda som Quoted-Printable )
.
UseAuthentication Boolean Vissa SMTP-servrar kräver autentisering med användarnamn och lösenord innan ett e-mail kan skickas. Om den server du tänker använda kräver det kan du sätta denna egenskap till True samt ange användarnamn och lösenord via egenskaperna UserName och Password.
.
UseLog Boolean Sätter på eller stänger av logghantering i komponenten. Om denna egenskap sätts till True kommer en loggfil som innehåller detaljerad information om SMTP-kommunikationen mellan klient och server att skapas. En förklaring av de vanligaste SMTP-kommandona som återfinns i loggfilen kan läsas på denna sida.
 
Filnamnet på loggfilen är alltid SLSMTPAX.LOG och i Windows Vista och senare skapas loggfilen i mappen \Users\<Användare>\AppData\Roaming\SamLogic\Log Files. I Windows XP och äldre skapas loggfilen i Windows-katalogen (oftast C:\Windows). För att erhålla aktuell sökväg kan metoden GetLogPath användas.
.
UserName String Om den SMTP-server du tänker skicka e-post via kräver autentisering anger du ett användarnamn här. Observera att egenskapen UseAuthentication måste vara satt till True för att användarnamnet ska användas.
.
XMailer String Här anger du den text som ska visas efter fältet "X-Mailer" i e-posthuvudet.
.
 
 

Händelser
 
Namn Beskrivning
ErrorOccured Denna händelse sänds om ett fel inträffar när ett e-mail skickas.
.
MailServerReportedError Denna händelse sänds om e-postservern rapporterar att ett fel inträffat. Parametern ReplyCode indikerar vilket typ av fel som inträffat.
.
MailTransferApproved Denna händelse sänds om inlogningen till SMTP-servern gått bra och SLSMTP har fått tillåtelse att skicka ett mail.
.
SendCompleted Denna händelse sänds efter att ett e-mail har sänts iväg och inga allvarliga fel uppstått.
.
 
 
Metoder
 

Break ()

Avbryter pågående operation. Metoden kan utnyttjas om komponenten väntar på svar från e-postservern och inget sådant kommer inom en förväntad tidsrymd. Då kan denna metod anropas för att bryta vänteläget.

GetLastError () As Long

Returnerar senast inträffade felet i komponenten.

GetLastReplyCode () As Long

Returnerar senaste svarskoden från e-postservern.

GetLastReplyMsg () As String

Returnerar senaste svarsmeddelandet från e-postservern.

GetLogPath () As String

Returnerar aktuell sökväg till loggfil.

HaveIncludeObjects () As Boolean

Returnerar True om HTML-skripten innehåller objekt (bilder eller ljud) som kan inkluderas i meddelandet. Finns inga sådana objekt returnerar funktionen False.

SendMail () As Boolean

Sänder iväg ett e-mail. Inträffar ett fel vid initieringen returnerar funktionen False, annars returneras True.
   .


Exempel

SLSMTP1.DocumentType = 0                    ' Vi ska skicka ut ren text
SLSMTP1.MailServer = "testserver.mail.com"  ' Ange mailserver
SLSMTP1.MailAddress = "abc@mail.com"        ' Ange inloggnings-adress
SLSMTP1.To = "test@test.com"                ' Ange mottagaradress
SLSMTP1.FromMailAddr = "mail@samlogic.com"  ' Ange avsändaradress
SLSMTP1.FromName = "SamLogic"               ' Ange avsändarnamn
SLSMTP1.Subject = "Test"                    ' Ange ämnesrad
SLSMTP1.Body = "Detta är en test!"          ' Ange brevtext
SLSMTP1.SendMail                            ' Skicka iväg mailet!
  
  

SamLogic