Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Attachments.Add Powershell

Frage Entwicklung Batch & Shell

Mitglied: Dackelblick

Dackelblick (Level 1) - Jetzt verbinden

01.10.2010 um 14:17 Uhr, 5871 Aufrufe, 3 Kommentare

Hallo Zusammen!

Ich hab da ein Problem...

Folgender Ausschnitt führt zu einem Problem...

$server = "10.10.10.10"
$from = "user@irgendwie.com"
$subject = "TEST"
$template = "C:\Opt\PowerShellCMDs\TEST.html"
$body = get-Content $template

$att_pdf = New-Object System.Net.Mail.Attachment –ArgumentList "C:\Opt\PowerShellCMDs\TEST.pdf", "Application/Pdf"
$message = New-Object System.Net.Mail.MailMessage($from, $email, $subject, $body)

$message.Attachtments.Add($att_pdf)
$message.IsBodyHTML = $true


...das Problem

You cannot call a method on a null-valued expression.
At C:\Opt\PowerShellCMDs\TEST.ps1:44 char:28

$message.Attachtments.Add <<<< ($att_pdf)

+ CategoryInfo : InvalidOperation: (Add:String) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull


Kann ich zur Strings als Attachments mitgeben? Würde an sich keinen Sinn machen. Ich habe übrigens auch die Formen

$att_pdf = New-Object System.Net.Mail.Attachment –ArgumentList "C:\Opt\PowerShellCMDs\TEST.pdf", "Application/Pdf"

oder

$att_pdf = New-Object System.Net.Mail.Attachment –ArgumentList "C:\Opt\PowerShellCMDs\TEST.pdf", "Application/Octet"

oder

$att_pdf = New-Object System.Net.Mail.Attachment("C:\Opt\PowerShellCMDs\TEST.pdf")

oder

$att_file = "C:\Opt\PowerShellCMDs\TEST.pdf"
$att_pdf = New-Object System.Net.Mail.Attachment($att_file)

probiert.

Ergebnis ist immer das Gleiche.... Die Datei gibt es.

Jemand eine gute Idee?

DANKE!!!!!!!!!!!!
Mitglied: dog
02.10.2010 um 00:25 Uhr
Ich hab das grade mal in PS1.0 ausprobiert.
Klappt bei mir problemlos.

01.
PS C:\Dokumente und Einstellungen\Administrator> $mail = New-Object System.Net.Mail.MailMessage("xxx","yyy","Titel","Inhalt") 
02.
PS C:\Dokumente und Einstellungen\Administrator> $mail 
03.
 
04.
 
05.
From                        : xxx 
06.
Sender                      : 
07.
ReplyTo                     : 
08.
To                          : {} 
09.
Bcc                         : {} 
10.
CC                          : {} 
11.
Priority                    : Normal 
12.
DeliveryNotificationOptions : None 
13.
Subject                     : Titel 
14.
SubjectEncoding             : 
15.
Headers                     : {} 
16.
Body                        : Inhalt 
17.
BodyEncoding                : System.Text.ASCIIEncoding 
18.
IsBodyHtml                  : False 
19.
Attachments                 : {} 
20.
AlternateViews              : {} 
21.
 
22.
 
23.
 
24.
PS C:\Dokumente und Einstellungen\Administrator> $att = New-Object System.Net.Mail.Attachment -ArgumentList "C:\setup.log","application/octet-stream" 
25.
PS C:\Dokumente und Einstellungen\Administrator> $att 
26.
 
27.
 
28.
Name               : setup.log 
29.
NameEncoding       : 
30.
ContentDisposition : attachment 
31.
ContentStream      : System.IO.FileStream 
32.
ContentId          : f78e16fd-fd83-4685-b2cd-a34d80bd2114 
33.
ContentType        : application/octet-stream; name=setup.log 
34.
TransferEncoding   : Base64 
35.
 
36.
 
37.
 
38.
PS C:\Dokumente und Einstellungen\Administrator> $mail.Attachments.Add($att) 
39.
PS C:\Dokumente und Einstellungen\Administrator>
Bitte warten ..
Mitglied: Dackelblick
04.10.2010 um 10:13 Uhr
Ich teste es mit der Powershell_ISE. Gebe ich es auf der "Konsole" als Befehl ein bekomme ich die Infos wie Du - lasse ich das Script laufen (RUN) bekomme ich den Fehler.????

Korrektur:
$messages.Attachments.Add(...)

schlägt auch damit fehl...


Also in Codeschnipsel...

$body = get-Content "C:\Opt\PowerShellCMDs\TEST.html"
$file = "C:\Opt\PowerShellCMDs\TEST.pdf"
$msg = New-Object System.Net.Mail.MailMessage("vorname.nachname@vonwo.com", "vorname2.nachname2@irgendwo.com", "TEST", $body)
$att = New-Object System.Net.Mail.Attachment($file, "Application/Pdf")

Name : TEST.pdf
NameEncoding :
ContentDisposition : attachment
ContentStream : System.IO.FileStream
ContentId : 256abdcd-428c-416c-919f-88a970e9d856
ContentType : Application/Pdf; name=TEST.pdf
TransferEncoding : Base64

PS C:\WINDOWS\system32\windowspowershell\v1.0> $msg

From : vorname.nachname@vonwo.com
Sender :
ReplyTo :
To : {vorname2.nachname2@irgendwo.com}
Bcc : {}
CC : {}
Priority : Normal
DeliveryNotificationOptions : None
Subject : TEST
SubjectEncoding :
Headers : {}
Body : <!DOCTYPE HTML PUBLIC " -W3CDTD HTML 4.01//EN" >
<html> <head> <title>New Document</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head> <body>
...................
</body> </html>
BodyEncoding : System.Text.UTF8Encoding
IsBodyHtml : False
Attachments : {}
AlternateViews : {}


ABER!!!!!!!!!!!!!!

$msg.Attachtments.Add($att)

PS C:\WINDOWS\system32\windowspowershell\v1.0> $msg.Attachtments.Add($att)
You cannot call a method on a null-valued expression.
At line:1 char:22

$msg.Attachtments.Add <<<< ($att)

+ CategoryInfo : InvalidOperation: (Add:String) [], RuntimeExcept
ion
+ FullyQualifiedErrorId : InvokeMethodOnNull
Bitte warten ..
Mitglied: Dackelblick
04.10.2010 um 11:03 Uhr
Oje...

ein "t" war es...... *schäm"
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst PC nach einem Kopiervorgang herunterfahren - PowerShell Script? (4)

Frage von Stefan007 zum Thema Batch & Shell ...

Windows Server
PowerShell Script - Ordnerrechte setzen (7)

Frage von desmondjames zum Thema Windows Server ...

Batch & Shell
gelöst Mit Powershell schwarzes CMD-Fenster unterdrücken? (4)

Frage von Yauhun zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Google Android
gelöst Android-Handy versehentlich (dauerhaft) gesperrt? (19)

Frage von FA-jka zum Thema Google Android ...

Batch & Shell
gelöst Ordner und Datei Name gleich (BATCH) (12)

Frage von clragon zum Thema Batch & Shell ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

DSL, VDSL
gelöst DSL 200m verlängern (11)

Frage von Angela44 zum Thema DSL, VDSL ...