Mailversand via Batch
Hallo Zusammen,
ich versuche gerade ein SQL Query - Abfrageergebnis via Batch raus zusenden.
Das Query schaut so aus=
SELECT pool_id, name,
min_memory_percent AS prozent_min,
max_memory_percent AS prozent_max,
max_memory_kb/1024 AS mb_max,
used_memory_kb/1024 AS mb_verwendet
FROM sys.dm_resource_governor_resource_pools;
sqlcmd -i C:\Skripte\SQLQuerys\RAM_Auslesen_SQL_DB.sql ( Aufruf des Query via batch) dies klappt auch!
@echo off <-- wie wären die Einträge um mich quasi " anzumelden"?
set SMTP=smtp.xxxx.de
set SUBJECT=Testmailing
set BODY=Das Ergebnis Deiner SQL Abfrage.
set FROM=Powershell@%computername% <-- kann ich hier einfach eine Absende Adresse Eintragen ?
set TO=rolandxxxxx@xxxxx.de
echo ich sende eine mail
powershell -ExecutionPolicy Unrestricted -c "Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body '%BODY%' -SmtpServer '%SMTP%' -From '%FROM%'"
Hier die (Fehler) Meldung
Send-mailMessage : An invalid Character was found in the mail Header :´@´.
At Line:1 Char :1
+CategoryInfo : Invalid Type: (Powershell@string) [SendMailMessage], FormatException
+FullQualified errorID: Format Execption. Microsoft.Powershell.Commands.sendmailMessage
Das Eegebnis komt auch richtig raus. Dieses Ergebnis will ich nun mit Mailsend zu senden, allerdings geht das nur via SSL und der ziel smtp steht nicht in der gleichen Domäne...
Der Port 587 ist aber in der firewall freigeben! Ich bekomme, glaube ich, immer den Hinweis das ich nicht authentifiziert bin? daher meine Fragen bin neu mit der batch geschichte ...
Danke euch vorab
Grüße
Roland
ich versuche gerade ein SQL Query - Abfrageergebnis via Batch raus zusenden.
Das Query schaut so aus=
SELECT pool_id, name,
min_memory_percent AS prozent_min,
max_memory_percent AS prozent_max,
max_memory_kb/1024 AS mb_max,
used_memory_kb/1024 AS mb_verwendet
FROM sys.dm_resource_governor_resource_pools;
sqlcmd -i C:\Skripte\SQLQuerys\RAM_Auslesen_SQL_DB.sql ( Aufruf des Query via batch) dies klappt auch!
@echo off <-- wie wären die Einträge um mich quasi " anzumelden"?
set SMTP=smtp.xxxx.de
set SUBJECT=Testmailing
set BODY=Das Ergebnis Deiner SQL Abfrage.
set FROM=Powershell@%computername% <-- kann ich hier einfach eine Absende Adresse Eintragen ?
set TO=rolandxxxxx@xxxxx.de
echo ich sende eine mail
powershell -ExecutionPolicy Unrestricted -c "Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body '%BODY%' -SmtpServer '%SMTP%' -From '%FROM%'"
Hier die (Fehler) Meldung
Send-mailMessage : An invalid Character was found in the mail Header :´@´.
At Line:1 Char :1
+CategoryInfo : Invalid Type: (Powershell@string) [SendMailMessage], FormatException
+FullQualified errorID: Format Execption. Microsoft.Powershell.Commands.sendmailMessage
Das Eegebnis komt auch richtig raus. Dieses Ergebnis will ich nun mit Mailsend zu senden, allerdings geht das nur via SSL und der ziel smtp steht nicht in der gleichen Domäne...
Der Port 587 ist aber in der firewall freigeben! Ich bekomme, glaube ich, immer den Hinweis das ich nicht authentifiziert bin? daher meine Fragen bin neu mit der batch geschichte ...
Danke euch vorab
Grüße
Roland
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 514203
Url: https://administrator.de/contentid/514203
Ausgedruckt am: 22.11.2024 um 11:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo
Wenn du über einen SMTP sendest, solltest du dich dem gegenüber auch authentifizieren. Ich sehe keine Credentials.
Gruß Mikro
Beispiel:
Send-MailMessage -To xxx@hotmail.com -SmtpServer SMTP.office365.com -From yyy@hotmail.com -Port 587 -Credential $Credentials -UseSsl -Subject "Betreff" -Body "Text" -Attachments Dateianhang optional
Wenn du über einen SMTP sendest, solltest du dich dem gegenüber auch authentifizieren. Ich sehe keine Credentials.
Gruß Mikro
Beispiel:
Send-MailMessage -To xxx@hotmail.com -SmtpServer SMTP.office365.com -From yyy@hotmail.com -Port 587 -Credential $Credentials -UseSsl -Subject "Betreff" -Body "Text" -Attachments Dateianhang optional
@echo off
set "SMTP=smtp.xxxx.de"
set "SUBJECT=Testmailing"
set "BODY=Das Ergebnis Deiner SQL Abfrage."
set "FROM=absender@domain.tld"
set "TO=rolandxxxxx@xxxxx.de"
set "USER=USERXYZ"
set "PASSWORD=GEHEIM"
powershell -ExecutionPolicy Bypass -NoP -c "Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -Body '%BODY%' -SmtpServer '%SMTP%' -From '%FROM%' -Credential (New-Object PSCredential('%USER%',(ConvertTo-SecureString '%PASSWORD%' -AsPlainText -Force))) -Port 587 -UseSSL"