Emails per Blat in eine for Schleife schicken
Batch, Emails mit einer for Schleife per Blat schicken
Hallo Leute,
nun da Ihr mir beim letzten mal so gut geholfen habt, wollte ich noch eine Frage stellen.
Ich muss nacheinander mehrere Emails verschicken, die Emails gehen an eine Adresse, allerdings mit unterschiedlichen Anhängen und unterschiedlichen Bettreffen.
Um Emails zu verschicken benutze ich Blat.
Also im Moment sieht es so aus:
@echo on
cd /d C:\Ordner
set Benutzername="Name"
set PW="passwort"
for /F %%f in (C:\Ordner\TestDaten\*.*) do (
set anhang=%%f
for /L %%i in (1 1 20) do (
set betreff=%%i
::cd /d C:\Ordner\blat\full
Blat -install Computername.domaene emailadresse@adresse.de
Blat"C:\Ordner\blat\full\body.txt" -to test@emailadresse.de) do (-server server -attach "C:\Ordner\%anhang%" -u %Benutzername% -pw %PW% -subject "%betreff%"
)
)
Ich meine um mehrere Emails zu verschicken muss ich eine Scheife um Blatt erstellen, ich stehe mommentan irgendwie komplett auf dem Schlauch und weiss nicht wie ich das hinkriege.
Tut mir leid dass, ich dumme Fragen stelle, währe aber super nett von euch, wenn ihr mir helfen könntet.
Danke
Gruß
Paul
Hallo Leute,
nun da Ihr mir beim letzten mal so gut geholfen habt, wollte ich noch eine Frage stellen.
Ich muss nacheinander mehrere Emails verschicken, die Emails gehen an eine Adresse, allerdings mit unterschiedlichen Anhängen und unterschiedlichen Bettreffen.
Um Emails zu verschicken benutze ich Blat.
Also im Moment sieht es so aus:
@echo on
cd /d C:\Ordner
set Benutzername="Name"
set PW="passwort"
for /F %%f in (C:\Ordner\TestDaten\*.*) do (
set anhang=%%f
for /L %%i in (1 1 20) do (
set betreff=%%i
::cd /d C:\Ordner\blat\full
Blat -install Computername.domaene emailadresse@adresse.de
Blat"C:\Ordner\blat\full\body.txt" -to test@emailadresse.de) do (-server server -attach "C:\Ordner\%anhang%" -u %Benutzername% -pw %PW% -subject "%betreff%"
)
)
Ich meine um mehrere Emails zu verschicken muss ich eine Scheife um Blatt erstellen, ich stehe mommentan irgendwie komplett auf dem Schlauch und weiss nicht wie ich das hinkriege.
Tut mir leid dass, ich dumme Fragen stelle, währe aber super nett von euch, wenn ihr mir helfen könntet.
Danke
Gruß
Paul
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 171765
Url: https://administrator.de/forum/emails-per-blat-in-eine-for-schleife-schicken-171765.html
Ausgedruckt am: 21.04.2025 um 12:04 Uhr
7 Kommentare
Neuester Kommentar
Hallo Paul,
das Problem bei Deiner Frage ist nicht, dass sie dumm wäre, sondern die Aufgabenbeschreibung ist nebulös. Selbst mit Hilfe der von Dir angegebenen Codezeilen bleibt meine Glaskugel schwarz und mein eingebauter Batchscript-Parser stürzt mit einem Syntaxerror ab.
Gruß
Friemler
das Problem bei Deiner Frage ist nicht, dass sie dumm wäre, sondern die Aufgabenbeschreibung ist nebulös. Selbst mit Hilfe der von Dir angegebenen Codezeilen bleibt meine Glaskugel schwarz und mein eingebauter Batchscript-Parser stürzt mit einem Syntaxerror ab.
- Die Anhänge sind soweit klar - es handelt sich um Dateien aus dem Verzeichnis
C:\Ordner\TestDaten
, und zwar um alle Dateien. - Als Betreff nur eine Zahl zu verwenden entspricht wohl nicht der Realität. Wo sollen die Texte für die Betreffzeilen herkommen?
- Welche Beziehung besteht zwischen den angehängten Dateien und den Betreffzeilen? Also welche Datei soll mit welcher Betreffzeile verschickt werden?
Gruß
Friemler
Hallo poljew!
Vorweg - Code liest sich mit der passenden besser ...
Dein Problem hast Du zwar nicht wirklich verständlich beschrieben, aber so sollte Dein Entwurf eher funktionieren:
Allerdings würden so für jeden Anhang 20 Mails verschickt - daher erkläre bitte mal etwas genauer, wie Anhang und Betreff zusammenhängen sollen ...
Grüße
bastla
Vorweg - Code liest sich mit der passenden besser ...
Dein Problem hast Du zwar nicht wirklich verständlich beschrieben, aber so sollte Dein Entwurf eher funktionieren:
@echo on & setlocal
set "Daten=C:\Ordner\TestDaten"
set Benutzername="Name"
set PW="passwort"
Blat -install Computername.domaene emailadresse@adresse.de
for %%f in ("%Daten%\*.*") do (
for /L %%i in (1 1 20) do (
Blat "C:\Ordner\blat\full\body.txt" -to test@emailadresse.de -server server -attach "%%f" -u %Benutzername% -pw %PW% -subject "%%i"
)
)
Grüße
bastla
Hallo poljew!
Warum genau 20? Sollten es genau 20 Anhänge sein, ergibt sich das ohnehin automatisch aus der Schleife, die ja einmal für jeden Anhang ausgegeführt wird.
Und nochmals die Frage: Wie hängen Betreff und Anhang zusammen? Wenn wirklich nur eine laufende Nummer gefragt wäre, dann etwa so:
Grüße
bastla
Warum genau 20? Sollten es genau 20 Anhänge sein, ergibt sich das ohnehin automatisch aus der Schleife, die ja einmal für jeden Anhang ausgegeführt wird.
Und nochmals die Frage: Wie hängen Betreff und Anhang zusammen? Wenn wirklich nur eine laufende Nummer gefragt wäre, dann etwa so:
@echo on & setlocal
set "Daten=C:\Ordner\TestDaten"
set Benutzername="Name"
set PW="passwort"
set /a Nr=1
Blat -install Computername.domaene emailadresse@adresse.de
for %%f in ("%Daten%\*.*") do call :ProcessFile "%%f"
goto :eof
:ProcessFile
Blat "C:\Ordner\blat\full\body.txt" -to test@emailadresse.de -server server -attach %1 -u %Benutzername% -pw %PW% -subject "%Nr%"
set /a Nr+=1
goto :eof
bastla