Keine überladung für "Add" und das argument zählen: "1"
Habe ich zwei verschiedene Schriftarten hat, und kombiniert Sie zu überprüfen, einen bestimmten Ordner für die neue Datei und E-Mail-Datei als Anhang.
Hier der code, kombiniert:
Param (
$Path = "C:\path"
)
$File = Get-ChildItem $Path | Where { $_.LastWriteTime -ge [datetime]::Now.AddMinutes(-10) }
If ($File)
{
$emailSmtpServer = "smtp.xxxx.com"
$emailSmtpServerPort = "587"
$emailSmtpUser = "[email protected]"
$emailSmtpPass = "xxxxxxxx"
$emailMessage = New-Object System.Net.Mail.MailMessage
$emailMessage.From = "Xxxx Xxxx <[email protected]>"
$emailMessage.To.Add( "[email protected]" )
$emailMessage.Subject = "File Test Report"
$emailMessage.IsBodyHtml = $false
$emailMessage.Body = "Weekly Report"
$SMTPClient = New-Object System.Net.Mail.SmtpClient( $emailSmtpServer , $emailSmtpServerPort )
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential( $emailSmtpUser , $emailSmtpPass );
$attachment = $File
$emailMessage.Attachments.Add($attachment)
$SMTPClient.Send($emailMessage)
}
Funktioniert der code einwandfrei, sieht es für die neue Datei ein und sendet die E-Mail, außer es wird nicht fügen Sie die Datei, und ich bekomme die folgende Fehlermeldung
Cannot find an overload for "Add" and the argument count: "1".
At D:\SendEmail2.ps1:24 char:1
+ $emailMessage.Attachments.Add($attachment)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodException
+ FullyQualifiedErrorId : MethodCountCouldNotFindBest
Ich denke es hat etwas zu tun mit dem Aufruf der Datei mit $attachment = $File
Kann jemand helfen?
InformationsquelleAutor Leoxanigm | 2016-10-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Werden Sie wahrscheinlich haben, um eine
Attachment
Objekt zuerst und haben auch Umgang mit mehreren Dateien so ersetzen Sie die folgenden Zeilen:mit:
new-object : Exception calling ".ctor" with "1" argument(s): "Could not find file 'C:\Users\xxxx\File.txt'." At D:\SendEmail2.ps1:23 char:15
Warum hat es die neue Datei kopieren, um C:\Users\xxxx\ ?Es muss nicht die Dateien kopiert. Ich änderte mein Skript, bitte geben Sie eine weitere Aufnahme.
Vielen, vielen Dank! Funktionierte perfekt.
InformationsquelleAutor Martin Brandl