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
Please also mark the comments that contributed to the solution of the article
Content-Key: 514203
Url: https://administrator.de/contentid/514203
Printed on: April 27, 2024 at 02:04 o'clock
4 Comments
Latest comment
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"