Mail in Batch versenden (mit PowerShell)?

Schachpapa  08.08.2022, 12:57
(stützt immer ab)

Gibt es dazu eine Fehlermeldung?

GamingChris98 
Fragesteller
 08.08.2022, 13:00

Sobald ich auf Enter nach der Pause über "echo ich sende eine mail" drücke stürzt das Programm ohne irgendeiner Meldung ab.

2 Antworten

Souta hat ja bereits in seinem Kommentar darauf hingewiesen, dass das Problem in den Zeilen 6 und 7 liegt.

Ich mache mir auch nicht die Mühe Deinen Screenshot abzutippen und korrigieren. (bei zukünftigen Fragen bitte Code als Text in eine Codebox (</>) einfügen)

Da das Send-Mailmessage Cmdlet obsolet ist, macht es ohnehin keinen Sinn mehr es zu nutzen . (benutzt veraltete Verschüsselungsprotokolle(TLS 1.1) , GMX akzeptiert nur noch TLS 1.2 und TLS 1.3)

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren

Moin,

spannende Fragen um die Problematik einzugrenzen:

Funktioniert deine Powershell-Zeile wenn du Sie in Powershell selbst eingibst?

In allen Fällen: Lass dir ein Debug-Output schreiben, damit hast du bestenfalls ein en Hinweis.

MfG

Souta

Woher ich das weiß:Berufserfahrung – IT-Sicherheits-Berater und Pentester
GamingChris98 
Fragesteller
 08.08.2022, 13:10

Ich hab's probiert und es kommt eine Fehlermeldung: https://snipboard.io/c0uEBr.jpg , leider weiß ich auch nicht wie ich diese beheben könnte.

0
Souta  08.08.2022, 13:35
@GamingChris98

Der Fehler bezieht sich darauf, dass der "-credetials" parameter ein Objekt erwartet und nicht den Befehl um es zu generieren.

Da stecken jetzt 2 Dinge drin:

  1. Lohnt es sich, dass du erstmal den Powershell Part in der Powershell ISE zum laufen bekommst. Dann kannst du ihn danach zu "Batch" konvertieren
  2. In deinem Originalen Script in der Frage versuchst du einen Powershell-Aufruf über eine Batch-Datei, oder? Zeile 6 und 7. Das kann so nicht aufgehen ohne, dass die Befehle an Powershell übergeben werden. Zur überprüfung kannst Du dir mit Echo mal die Variablen vor dem ersten PAUSE ausgeben lassen und schauen, ob alle so ist, wie es seien sollte.
2