Dieses Kapitel richtet sich nur an Entwickler von anderen Softwareprodukten, die SuperMailer in das eigene Programm einbinden möchten, um es für den E-Mail-Versand zu nutzen.
Zur Verwendung des SuperMailer in eigenen Anwendungen, besteht die Möglichkeit eine Ini-Datei zu verwenden und diese als Parameter an SuperMailer zu übergeben. Eine Vorgabe-Ini-Datei finden Sie im SuperMailer-Ordner, der Name lautet SuperMailer_AUTOCFG.INI.
Hinweis:
SuperMailer mit der Ini-Datei starten
Starten Sie SuperMailer mit dem Zusatzparameter /AUTOCFGFILE:<ordner und
name der ini-datei>,
z.B. c:\programme\supermailer\sm.exe /AUTOCFGFILE:c:\meinedatei.ini
Hinweis: Enthält der Ordner oder Dateiname der Ini-Datei Leerzeichen dann
geben Sie diese mit Anführungszeichen an,
z.B. c:\programme\supermailer\sm.exe /AUTOCFGFILE:"c:\vorlagen für eine
e-mail\meinedatei.ini"
Der Start von SuperMailer, kann über ShellExecute(params), CreateProcess(params) oder WinExec(params) erfolgen, dabei muss natürlich der Zusatzparameter korrekt übergeben werden.
Siehe auch
Kommandozeilenparameter
SuperMailer-Installationsordner bestimmen
Der SuperMailer-Installationsordner wird bei jedem Start des SuperMailer in den Wert InstallPath unter HKEY_CURRENT_USER\Software\Mirko Boeer Software\SuperMailer\Options geschrieben. Der Ordner kann entsprechend ausgelesen und verwendet werden. Die ausführbare Exe-Datei heisst immer sm.exe
Bestimmen ob SuperMailer bereits läuft
SuperMailer darf auf dem PC bzw. unter dem jeweiligen Windows-Nutzer nur einmal gestartet werden. Um zu Prüfen ob SuperMailer ausgeführt wird, sollte geprüft werden ob der Mutex SuperMailer32 existiert. Damit können Fehlermeldungen des Programms vermieten werden.
Beispiel für die Prüfung (in Delphi 7, leicht auf andere Sprachen anpassbar)
Var
hnd : THandle;
hnd := CreateMutex(nil, True, 'SuperMailer32');
If (GetLastError = ERROR_ALREADY_EXISTS) Then
// SuperMailer läuft
else
CloseHandle(hnd); // SuperMailer läuft nicht, Handle freigeben, sonst
startet SuperMailer nicht
Aufbau der Ini-Datei
Die Ini-Datei besteht aus mehreren Bereichen (Sections), die Informationen zu den auszuführenden Aktionen enthalten.
Hinweise:
Section/Parameter | Beschreibung |
[COMMON] |
|
VERSION=1.0 |
Bitte die Version 1.0 angeben, diese Angabe kann für später Anpassungen notwendig sein. |
|
|
[OPTIONS] |
|
DATABASETYPE= | Geben Sie SQLITE an, damit SuperMailer automatisch eine
lokale Empfängerdatenbank erstellt.
Verwenden Sie die Angabe MYSQL, damit SuperMailer sich mit einem
MySQL-Server verbinden soll. Es sind die Angaben im Bereich [MYSQL]
notwendig. |
PROJECTFILENAME= |
Geben Sie den Dateinamen mit Ordner der Projektdatei an.
Existiert die Datei und OPENEXISTING=TRUE
dann wird die Datei geöffnet.
Hinweis: Eine etwaige bestehende Datei wird ohne Warnung überschrieben. |
OPENEXISTING=TRUE|FALSE |
Geben Sie TRUE an, um die bestehende Projekdatei zu öffnen.
FALSE um eine neue Datei zu erstellen.
Hinweis: Ist die Angabe TRUE, dann wird der Bereich [SENDOPTIONS] nicht eingelesen, d.h. in der Projektdatei muss bereits die Versandart und damit verbunden den notwendigen Einstellungen vorgenommen wurden sein. |
MAILSUBJECT= |
Geben Sie den Betreff der E-Mail an, dies ist eine Pflichtangabe, wenn die E-Mails versendet werden sollen. |
SENDMAILS=TRUE|FALSE |
Geben Sie den Wert TRUE an, um die E-Mails zu versenden, SuperMailer wird nach dem E-Mail-Versand geschlossen. Geben Sie FALSE an, um keine E-Mails zu versenden, SuperMailer wartet nach Ausführung aller Aktionen auf eine Nutzereingabe. |
CREATEREPORT=TRUE|FALSE |
Geben Sie TRUE an, damit nach dem E-Mail-Versand ein Report im HTML-Format erstellt. |
EMAILCOLUMNNAME= |
Geben Sie den Feldnamen mit der E-Mail-Adresse an. Diese Angabe ist beim Import der Empfänger notwendig, damit SuperMailer weis in welcher Spalte die E-Mail-Adresse steht. Ist diese Angabe leer oder ungültig wird der Nutzer aufgefordert das Feld zu wählen. |
RECIPIENTSGROUP= | Name der Empfängergruppe, die gewählt werden soll. Nur wenn OPENEXISTING=TRUE wird diese Angabe verwendet. Lassen Sie die Angabe leer, damit SuperMailer die Empfänger "<keine Empfängergruppe>" verwendet. |
[MYSQL] | |
MYSQLSERVERNAME= MYSQLDBNAME= MYSQLUSERNAME= MYSQLPASSWORD= MYSQLTABLEPREFIX= MYSQLSERVERPORT=3306 MYSQLCONNECTTIMEOUT=30 MYSQLREADTIMEOUT=600 MYSQLWRITETIMEOUT=600 |
Diese Angaben werden nur berücksichtigt, wenn DATABASETYPE=MYSQL
und die Angabe OPENEXISTING=FALSE
gesetzt ist.
Geben Sie die Zugangsdaten zum MySQL-Server an. |
|
|
[MAILTEXT] |
|
FORMAT=HTML|TEXT|MULTIPART |
Dies gibt das Format der E-Mail an. Geben Sie HTML an, um eine reine HTML-E-Mail zu erstellen. TEXT um eine reine Textmail zu erstellen. MULTIPART erlaubt es multipart-E-Mails zu erstellen. |
HTMLFILE= |
Wurde als Format HTML oder MULTIPART gewählt, dann kann
eine HTML-Datei mit Ordnerangabe angegeben werden, die als E-Mail-Text
geladen werden soll.
Es ist ebenfalls möglich eine Datei aus dem Internet laden zu lassen, geben Sie dazu unbedingt die komplette URL mit http:// an. |
TEXTFILE= |
Geben Sie eine Textdatei mit Ordnerangabe an. Wurde als Format HTML angegeben, dann wird die Textdatei als alternativer Text für die multi-part E-Mail geladen. Ist als Format der E-Mail TEXT angegeben, dann wird die Textdatei als Text der E-Mail geladen. Es ist ebenfalls möglich eine Datei aus dem Internet laden zu lassen, geben Sie dazu unbedingt die komplette URL mit http:// an. |
|
|
[ATTACHMENTS] |
|
FILE1= |
Geben Sie die Anhänge der E-Mail an. Die Angabe muss
erfolgen mit <eindeutiger Bezeichner>=<kompletter Ordner und
Dateiname> z.B.
FILE1=c:\autoexec.bat |
|
|
[SENDOPTIONS] |
(siehe Menü Projekt - Einstellungen für den E-Mail-Versand, um Hilfe zu den Einstellungen zu erhalten) |
MAILCHARSET=iso-8859-1|iso-8859-2|iso-8859-3|iso-8859-4| iso-8859-6|iso-8859-7|iso-8859-8|iso-8859-9|iso-8859-10| windows-1250|windows-1251|windows-1252|windows-1253| windows-1254|windows-1255|windows-1256|windows-1257| windows-1258|windows-1259|utf-8 |
Geben Sie die Kodierung der E-Mail an, die möglichen Bezeichner sind angegeben. Standard ist iso-8859-1 diese Angabe gilt für alle europäischen E-Mails. |
MAILPRIORITY=NORMAL|HIGH|HIGHEST |
Geben Sie die Priorität der E-Mail an. |
FROM= |
Absender-E-Mail-Adresse der E-Mail angeben |
REALNAME= |
Angezeigter Name der E-Mail angeben |
REPLYTOADDRESS= |
Geben Sie die Antwort-E-Mail-Adresse an. |
MULTIPART=TRUE|FALSE |
Diese Option ist nur für HTML-E-Mails. Geben Sie TRUE an, um eine multi-part E-Mail zu erstellen (ein Teil Text und ein Teil HTML). FALSE um eine reine HTML-Mail zu versenden. |
SMAPI=TRUE|FALSE |
Geben Sie TRUE an, um die E-Mails über die Simple Mail API verschicken zu lassen. |
OUTLOOK=TRUE|FALSE |
TRUE versendet die E-Mails über Microsoft Outlook |
SMTP_DIRECT=TRUE|FALSE |
TRUE versendet die E-Mail direkt an den Server des E-Mail-Empfängers |
SMTP=TRUE|FALSE |
TRUE versendet die E-Mail über den SMTP-Server des Internetproviders, die Angaben zu Servernamen und Port müssen angegeben werden, um E-Mails zu versenden. |
SMTP_SERVERNAME= |
Geben Sie den Namen des SMTP-Servers an. |
SMTP_PORT=25 |
Geben Sie den Port an, Standard ist 25. |
TIMEOUT=60 |
Geben Sie die Wartezeit für den SMTP-Server in Sekunden an, Standard ist 60 Sekunden. |
THREADS= |
Geben Sie die Anzahl Threads für den Versand der E-Mails an, Standard ist 5. |
SMTP_AUTH=TRUE|FALSE |
TRUE SMTP-Authentifizierung notwending, die Angaben SMTP_USERNAME und SMTP_PASSWORD müssen angegeben werden. |
SMTP_USERNAME= |
SMTP-Benutzername für SMTP-Authentifizierung |
SMTP_PASSWORD= |
SMTP-Passwort für SMTP-Authentifizierung |
SMTP_USE_SSL=1|0 | SSL-Verschlüsselung nutzen ja/nein |
POP3_AUTH=TRUE|FALSE |
TRUE POP3-Authentifizierung nutzen, POP3_SERVER, POP_PORT, POP3_USERNAME und POP3_PASSWORD müssen ausgefüllt werden. |
POP3_SERVER= |
Geben Sie den POP3-Server an. |
POP3_PORT=110 |
Der Port ist meistens 110 |
POP3_USERNAME= |
Benutzername für den POP3-Server |
POP3_PASSWORD= |
Passwort für den POP3-Server |
RETURN_RECEIPT=TRUE|FALSE |
TRUE - Empfangsbestätigung vom Empfänger anfordern |
BCCTOMYSELF=TRUE|FALSE |
TRUE - eine Blindkopie jeder versendeten E-Mail wird an die eigene E-Mail-Adresse gesendet (nicht bei Versandart direkt an Server des Empfängers). |
ESMTP=TRUE|FALSE |
Diese Angabe sollte immer auf FALSE stehen, außer Sie wissen genau, dass es notwendig ist. |
BREAK=1 |
Pause zwischen dem Versenden jeder einzelnen E-Mail, Standard 1 ms |
MAILSENDBREAK=TRUE|FALSE |
Pause zwischen dem Versenden von einer gewissen Anzahl E-Mails. |
MAILBREAKAFTER=2 |
Pause nach X E-Mails machen |
MAILBREAKAFTERWAITTIME=1 |
Pause in Sekunden |
BCCSEND=TRUE|FALSE |
TRUE Versand per BCC aktiv; entsprechende Lizenz natürlich notwendig |
BCCMAXRECIPIENTSPERMAIL=1 |
Maximale Anzahl BCC-Empfänger, die Anzahl muss > 0 betragen! |
BCCTOEMAILADDRESS= |
Geben Sie die E-Mail-Adresse im Feld "An/To" an, diese Angaben ist notwendig und muss korrekt sein! |
|
|
[DEFAULTFIELDS] |
|
0=Name |
Geben Sie die Standardfelder an, die SuperMailer in der Empfängerliste anzeigen soll. Sollten Sie beim Import die Felddefinition mit importieren lassen, dann hat diese Angabe keine Wirkung. Lassen Sie die Felddefinition nicht mit importieren, dann muss die Feldzuordnung für die jeweilige Import-Variante im Bereich [<importvariante>_FIELD_ASSIGNMENT] angegeben werden. Beim Import von Textdateien muss die Struktur in der Textdatei vorgegeben werden. |
1=Vorname |
|
2=EMail |
|
3=Anrede |
|
|
|
[IMPORT] |
Der Import-Bereich wird in der angegebenen Reihenfolge durchsucht, trifft eine Importbedingung zu bzw. ist nicht leer, dann werden die anderen Import-Varianten übergangen. |
TEXTFILE= |
Geben Sie den kompletten Ordner und Dateinamen der zu importierenden Textdatei an, möchten Sie nicht aus einer Textdatei importieren, dann lassen Sie die Angabe leer. |
XLSFILE= |
Geben Sie den kompletten Ordner und Dateinamen der zu importierenden Excel-Datei an, möchten Sie nicht aus einer Excel-Datei importieren, dann lassen Sie die Angabe leer. |
WABFILE= |
Geben Sie den kompletten Ordner und Dateinamen der zu importierenden WAB-Datei (= Windows Adressbuch) an, möchten Sie nicht aus einer WAB-Datei importieren, dann lassen Sie die Angabe leer. |
OUTLOOKIMPORT=TRUE|FALSE |
TRUE, der Import soll aus Outlook erfolgen |
DBIMPORT=TRUE|FALSE |
TRUE, der Import soll aus einer sqlfähigen Datenbank erfolgen. |
INTERNETFILE= | Geben Sie den kompletten HTTP-Aufruf für den Import aus dem Internet an. |
|
|
[TEXTFILE_IMPORT_OPTIONS] |
Legt die Optionen für den Import aus einer Textdatei fest |
SEPARATOR= |
Trenner zwischen den zu importierenden Werten angeben, z.B. ;. Für das Tabulator-Zeichen kann \t angegeben werden, weitere Angaben mit \ sind nicht möglich. |
NOHEADLINE=TRUE|FALSE |
TRUE, es existiert keine Felddefinition in der ersten Zeile der Textdatei, die Struktur siehe [DefaultFields] muss vorgegeben werden. |
DONTCLEARCURRENTLIST=TRUE|FALSE |
TRUE, Löscht die bestehende Empfängerliste nicht, die Struktur der Textdatei muss mit den zu importierenden Daten übereinstimmen. |
ONLYEMAILADDRESSES=TRUE|FALSE |
TRUE, Liste enthält nur E-Mail-Adressen, eine E-Mail-Adresse pro Zeile |
NOEMAILCHECK=TRUE|FALSE |
TRUE, keine äußere Prüfung der E-Mail-Adressen auf Gültigkeit |
REMOVEQUOTES=TRUE|FALSE |
TRUE, entfernt etwaige Anführungszeichen in den zu importierenden Daten |
TRIMSPACES=TRUE|FALSE |
TRUE, führende, nachfolgende Leerzeichen entfernen |
OEMTOANSI=TRUE|FALSE |
TRUE, Konvertierung DOS nach ANSI; Standard ist FALSE |
[INTERNETFILE_IMPORT_OPTIONS] |
Legt die Optionen für den Import aus dem Internet fest |
SEPARATOR= |
Trenner zwischen den zu importierenden Werten angeben, z.B. ;. Für das Tabulator-Zeichen kann \t angegeben werden, weitere Angaben mit \ sind nicht möglich. |
NOHEADLINE=TRUE|FALSE |
TRUE, es existiert keine Felddefinition in der ersten Zeile der Textdatei, die Struktur siehe [DefaultFields] muss vorgegeben werden. |
DONTCLEARCURRENTLIST=TRUE|FALSE |
TRUE, Löscht die bestehende Empfängerliste nicht, die Struktur der Textdatei muss mit den zu importierenden Daten übereinstimmen. |
ONLYEMAILADDRESSES=TRUE|FALSE |
TRUE, Liste enthält nur E-Mail-Adressen, eine E-Mail-Adresse pro Zeile |
REMOVEQUOTES=TRUE|FALSE |
TRUE, entfernt etwaige Anführungszeichen in den zu importierenden Daten |
TRIMSPACES=TRUE|FALSE |
TRUE, führende, nachfolgende Leerzeichen entfernen |
|
|
[WABFILE_IMPORT_OPTIONS] |
Nur für den Import aus Windows-Adressbuch gültig |
DONTCLEARCURRENTLIST=TRUE|FALSE |
TRUE, löscht die bestehende Empfängerliste nicht |
|
|
[WABFILE_FIELD_ASSIGNMENT] |
Nur für den Import aus Windows-Adressbuch gültig, mindestens eine Zuordnung ist notwendig! |
NAME= |
Geben Sie nach NAME= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
FIRSTNAME= |
Geben Sie nach FIRSTNAME= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
TITEL= |
Geben Sie nach TITEL= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
EMAIL= |
Geben Sie nach EMAIL= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
MAINFAXNUMBER= |
Geben Sie nach MAINFAXNUMBER= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
BUSINESSFAX= |
Geben Sie nach BUSINESSFAX= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
COMPANYNAME= |
Geben Sie nach COMPANYNAME= einen Feldnamen an, der in der SuperMailer Empfängerliste existiert. Fehlt die Angabe, wird der Wert nicht importiert. |
|
|
[OUTLOOK_IMPORT_OPTIONS] |
Nur für den Import aus Outlook gültig. |
OUTLOOKFOLDERNAME= |
Name des Kontaktordners, Standard ist Kontakte |
OUTLOOKCATEGORY= |
Geben Sie die Kategorie an, ist die Angabe leer werden alle Kontakte importiert. |
DONTCLEARCURRENTLIST=TRUE|FALSE |
TRUE, aktuelle Empfängerliste wird nicht gelöscht |
|
|
[OUTLOOK_FIELD_ASSIGNMENT] |
Nur für den Import aus Outlook gültig, mindestens eine Zuordnung ist notwendig! |
E-Mail-Adresse 1= Angezeigter Name E-Mail-Adresse 1= E-Mail-Adresse 2= Angezeigter Name E-Mail-Adresse 2= E-Mail-Adresse 3= Angezeigter Name E-Mail-Adresse 3= Vorname= Nachname= Vorname und Nachname= Nick Name= Titel= usw. |
Siehe Beispiel-Datei SuperMailer_AUTOCFG.INI die
Reihenfolge muss beibehalten werden.
Geben Sie hinter dem Gleichheitszeichen das Feld im SuperMailer an. Z.B. E-Mail-Adresse 1=EMail |
|
|
[XLSFILE_IMPORT_OPTIONS] |
Nur für den Import einer Excel-Datei notwendig. |
WORKSHEET=1..N |
Geben Sie die Nummer des Excel-Arbeitsblatts an, Standard ist 1. |
NOHEADLINE=TRUE|FALSE |
TRUE, Excel-Datei enthält keine Felddefinition in der ersten Zeile |
DONTCLEARCURRENTLIST=TRUE|FALSE |
TRUE, Empfängerliste wird nicht gelöscht. |
REMOVEQUOTES=TRUE|FALSE |
TRUE, Anführungszeichen entfernen |
TRIMSPACES=TRUE|FALSE |
TRUE, führende, nachfolgende Leerzeichen entfernen |
|
|
[DB_IMPORT_OPTIONS] |
Nur für den Import aus einer SQL-Datenbank notwendig. |
CONNECTIONSTRING= |
Geben Sie die Verknüpfungszeichenkette zur Datenbank an. Diese sollte am besten in SuperMailer selbst erstellt und kopiert werden. |
TABLENAME= |
Geben Sie den Namen der zu importierenden Tabelle an. Der Tabellenname wird nur verwendet, wenn keine eigene SQL-Anweisung bei DBSQLQuery= angegeben ist. |
ASSIGN_TABLE_STRUCTURE=TRUE|FALSE |
TRUE, die Tabellenstruktur der Tabelle bei der Angabe TABLENAME= wird gelesen und in die SuperMailer Empfängerliste 1:1 übernommen. |
DONTCLEARCURRENTLIST=TRUE|FALSE |
TRUE, Empfängerliste wird beim Import nicht gelöscht, bei Übernahme der Tabellenstruktur wird diese natürlich immer gelöscht. |
DBSQLQuery= | Optional: Geben Sie eine gültige SQL-Anweisung für den Import der Daten ein. Ist diese Angabe leer bzw. nicht angegeben, dann wird der Wert aus TABLENAME= verwendet. |
|
|
[DB_FIELD_ASSIGNMENT] |
Nur für den Import aus einer SQL-Datenbank notwendig, die Angabe ist notwendig, wenn ASSIGN_TABLE_STRUCTURE=FALSE |
TABLE_FIELD_NAME1..n=RECIPIENT_LIST_FIELD_NAME1..n |
Geben Sie jeweils den Feldnamen aus der Tabelle an, gefolgt
von einem Gleichheitszeichen und dem Feldnamen in der
SuperMailer-Empfängerliste z.B.
links vom Gleichheitszeichen der Feldname in der Tabelle, rechts vom Gleichheitszeichen den Feldnamen in der SuperMailer-Empfängerliste. Name=Name |
|
Siehe auch
Aufbau der Projektdateien