cor35vet
Goto Top

Mit VBS E-Mail senden(ohne Outlook)

Hallo erstmals.

Also ich habe folgendes Problem:

Ich möchte mit VBS ein Tool schreiben mit dem ich automatisch E-Mails senden kann ich habe bis jetzt das:
Option Explicit
Dim from,receiver,subject,body
Dim oCDO

from = InputBox("Bitte geben sie den Sender der E-Mail an!","E-Mail Client by BotoX","Sender")  
receiver = InputBox("Bitte geben sie den Empfänger der E-Mail an!","E-Mail Client by BotoX","Empfänger")  
subject = InputBox("Bitte geben sie den Betreff der E-Mail an!","E-Mail Client by BotoX","Betreff")  
body = InputBox("Bitte geben sie den Text der E-Mail an!","E-Mail Client by BotoX","Text")  
WScript.Echo "Nachricht erstellen"  
Set oCDO = Wscript.CreateObject("CDO.Message")  

With oCDO ' Baue Nachricht zusammen  
 .From = from ' Sender  
 .To = receiver ' Empfänger  
 .Subject = subject ' Betreff  
 .TextBody = body

 WScript.Echo "Nachricht erstellt"  
 .Send 'Hier kommt immer die fehler Meldung!  
End With

WScript.Echo "Nachricht verschickt"  

Also leider kommt immer die Fehlermeldung:
cf79d2acc18d22a4116dc0fd5b2ddb37-unbenannt


Ich hoffe ihr könnt mir helfen

PS. Ihr könnt den Code für eure zwecke benützen und weitergeben (naja falls er am schluss funktioniert)

Content-Key: 108629

Url: https://administrator.de/contentid/108629

Printed on: April 23, 2024 at 18:04 o'clock

Member: kruder77
kruder77 Feb 15, 2009 at 19:47:57 (UTC)
Goto Top
Fehlercode: 80040220 -> http://support.microsoft.com/kb/963168/de

gruß
kruder
Member: cor35vet
cor35vet Feb 15, 2009 at 23:48:12 (UTC)
Goto Top
Danke es hat mir mehr oder weniger geholfen obwohl ich jetzt weiß ,dass ich einen Server brauch face-sad deshalb das weniger.
Vielleicht gibt es ja eine andere Methode eine E-Mail über VBS zu senden.
Member: kruder77
kruder77 Feb 16, 2009 at 00:35:01 (UTC)
Goto Top
Du kannst über SMTP,POP3 bei deinen E-Mail Provider deine Email versenden/abrufen,
wenn Du keinen eigenen Server hast... und das wiederum kannste in deine Form integrieren...

Schaue Dir mal in der Hilfe das MailMessageObject an...
und die Namespaces:

Imports System.Net.Mail
Imports System.Net.Mail.SmtpClient

gruß
kruder
Member: cor35vet
cor35vet Feb 16, 2009 at 08:32:57 (UTC)
Goto Top
Nur das Problem is ich wollte eigentlich zu jeder mailadresse etwas schicken können und das kann ich aber auch über telnet wie zb.
telnet mx0.gmx.net 25
Member: kruder77
kruder77 Feb 16, 2009 at 11:04:11 (UTC)
Goto Top
Na Du kannst ja zu jeder Mailadresse etwas versenden, das SMTP ist ja für die Absender-Adresse... Die Mailadresse an die es gesendet wird kannste ja genau wie eigentliche Mail und die Betreffzeile als String übergeben...
Member: n4426
n4426 Feb 16, 2009 at 15:41:08 (UTC)
Goto Top
Hi,

so ein Script, könnte dann für SMTP z.B. so aussehen.

Set objMessage = CreateObject("CDO.Message")   
objMessage.Subject = "Test"   
objMessage.From = """Absender"" <Absender@domain.de>"   
objMessage.To = "empfänger@domain.de"   
objMessage.CC = ""   
objMessage.BCC = ""   
objMessage.TextBody = "test"  


objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2   
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.domain.de"  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "absender@domain.de"  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "Passwort"  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25   
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60  
objMessage.Configuration.Fields.Update

objMessage.Send 

mfg
andi
Member: cor35vet
cor35vet Feb 17, 2009 at 11:01:26 (UTC)
Goto Top
Danke andi,
aber leider löst das mein Problem nicht ganz.
Denn ich möchte die Email von jeder beliebigen Email adresse zu jeder beliebigen Adresse senden.
Aber es ist auch ein kleiner Vorteil denn ich bin bei GMX und wenn man da eine Email versendet kommt immer diese lästige werbung und hier nicht.

Trotzdem Danke für die Mühe andi, ich würde mich freuen wenn irgend wer vielleicht wie man von jeder beliebigen email zu jeder beliebigen email adresse senden kann oder einen server der jeden absender akzeptiert auch wenn es ihn nicht gibt.

Der Code für GMX:
Set objMessage = CreateObject("CDO.Message")   
objMessage.Subject = InputBox("Bitte geben sie den Betreff der E-Mail an!","E-Mail Client","Betreff")  
objMessage.From = InputBox("Bitte geben sie den Sender der E-Mail an!","E-Mail Client","Sender")  
objMessage.To = InputBox("Bitte geben sie den Empfänger der E-Mail an!","E-Mail Client","Empfänger")  
objMessage.CC = "InputBox("Bitte geben sie den CC der E-Mail an!","E-Mail Client","CC")"   
objMessage.BCC = "InputBox("Bitte geben sie den BCC der E-Mail an!","E-Mail Client","BCC")"   
objMessage.TextBody = InputBox("Bitte geben sie den Text der E-Mail an!","E-Mail Client","Text")  

objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2   
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmx.net"  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "!!! BENUTZERNAME !!!@gmx.at oder .net .biz , usw."  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "!!! PASWORT !!!"  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25   
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False  
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60  
objMessage.Configuration.Fields.Update

objMessage.Send