pdiddo
Goto Top

Batch E-Mail Body aus txt lesen und einfügen

Hi Leute,

ich habe folgendes script als .bat

@echo off
chcp 1252
start "" "mailto:Empfänger?subject=Betreff&body=Text"  

Nun möchte ich gerne den body (anstatt "Text") mit dem Text aus der A.txt füllen.

Wie bekomme ich das hin ?

LG

Content-Key: 333649

Url: https://administrator.de/contentid/333649

Printed on: April 18, 2024 at 21:04 o'clock

Mitglied: 132692
Solution 132692 Mar 30, 2017 updated at 11:57:23 (UTC)
Goto Top
Wenn es mehr wie eine Zeile in der Textdatei steht nur mit VBS oder Blat oder Powershell, mit Batch wird das mit dem MAILTO-Protokoll sonst nichts.

Gruß p.
Member: pdiddo
pdiddo Mar 30, 2017 at 11:44:11 (UTC)
Goto Top
Ok, danke soweit face-smile


Wie bekomme ich das mit nur einer Zeile hin ? Weißt du das ?

LG pdiddo
Mitglied: 132692
Solution 132692 Mar 30, 2017 updated at 11:46:08 (UTC)
Goto Top
Zitat von @pdiddo:
Wie bekomme ich das mit nur einer Zeile hin ? Weißt du das ?
Simples set /p mit redirect
@echo off
chcp 1252
set /p text=<A.txt
start "" "mailto:Empfänger?subject=Betreff&body=%text%"  
Mitglied: 132692
132692 Mar 30, 2017 updated at 11:59:03 (UTC)
Goto Top
Für mehrere Zeilen in der Textdatei nutze z.B. Powershell in der Batch:
powershell -Executionpolicy Bypass -Command "Send-MailMessage -From 'user@domain.de' -to 'empfaenger@domain.de' -Subject 'BlaBlaBla' -Body (gc 'C:\a.txt' -raw) -SmtpServer smtp.domain.de -Credential (New-Object PSCredential('USERNAME',(ConvertTo-SecureString 'PASSWORD' -AsPlainText -Force))) -UseSSL"  
Member: pdiddo
pdiddo Mar 30, 2017 updated at 12:16:35 (UTC)
Goto Top
Das würde gehen face-smile Danke !

Jedoch wollte ich gerne einen E-Mailprogramm nutzen wie z.b. Outlook, da hier der Empfänger ausgewählt werden kann und nicht vorgegeben ist.
Deswegen auch start maito:


LG
Mitglied: 132692
Solution 132692 Mar 30, 2017 updated at 12:20:29 (UTC)
Goto Top
Zitat von @pdiddo:

Das würde gehen face-smile Danke !

Jedoch wollte ich gerne einen E-Mailprogramm nutzen wie z.b. Outlook, da hier der Empfänger ausgewählt werden kann und nicht vorgegeben ist.
Deswegen auch start maito:
Nicht wirklich nötig, VBS kannst du das auch, nur viel "detaillierter" kontrollieren:
Set objOutlook = CreateObject("Outlook.Application")  
Set fso = CreateObject("Scripting.FileSystemObject")  
With objOutlook.CreateItem(0)
	.Subject = "Betreff"  
	.Body = fso.OpenTextFile("c:\A.txt",1).ReadAll  
	.Display
End With
Du siehst "Batch" ist sowas von 80er face-smile, eigne dir was modernes an ...
Member: pdiddo
pdiddo Mar 30, 2017 updated at 12:26:56 (UTC)
Goto Top
Sehr geil !!

Das ist genau das was ich wollte !!

Daaanke face-smile

Muss wohl mal "umschulen" :D
Member: pdiddo
pdiddo Apr 01, 2017 at 10:45:07 (UTC)
Goto Top
Hi nochmal!

das funktioniert ja alles soweit prima!

Beim ausführen startet outlook und erstellt eine neue Mail.

Was mir jetzt fehlt, ist die Signatur.

Wenn ich im Outlook auf "neue Mail" klicke, setzt er mir im body gleich die Signatur ein.
Geht das auch mit dem vbs??

LG

pdiddo
Mitglied: 132692
132692 Apr 01, 2017 at 13:27:40 (UTC)
Goto Top
Das lässt sich in der Registry steuern, Google ist dein Freund.