Frage

Ich möchte E-Mails von einem Skript auf einem Windows Server 2003 Standard Edition senden. Ich denke, der Server-Setup aus der Box ist ziemlich viel.

Der Mail-Server ist ein Exchange ein, und wenn Sie auf dem internen Netzwerk sind, können Sie nur alte SMTP verwenden. Ich habe es von meiner Maschine mit Perl getan, aber leider Perl ist auf dem Server nicht verfügbar ist.

Gibt es eine einfache Möglichkeit, diese von einer .bat-Datei zu tun, oder jede andere Art und Weise, die nicht einige zusätzliche Installation von Software erforderlich ist?

Edit:
Vielen Dank für die schnellen Antworten. Die „blat“ thingie würde wahrscheinlich gut funktionieren, aber mit wscript Ich muss keine separate binäre verwenden.

Ich habe nicht PhiLho die Post das erste Mal, dass ich bearbeiten und eine Antwort ausgewählt. Keine Notwendigkeit für mich hier den Code zu duplizieren.

Speichern Sie einfach das Skript in eine Datei, sagen SENDMAIL.VBS, und dann rufen Sie an der Eingabeaufforderung wie folgt:
wscript sendmail.vbs

War es hilfreich?

Lösung

Es ist möglich, mit Wscript, mit CDO:

Dim objMail

Set objMail = CreateObject("CDO.Message")

objMail.From = "Me <Me@Server.com>"
objMail.To = "You <You@AnotherServer.com>"
objMail.Subject = "That's a mail"
objMail.Textbody = "Hello World"
objMail.AddAttachment "C:\someFile.ext"

---8<----- You don't need this part if you have an active Outlook [Express] account -----
' Use an SMTP server
objMail.Configuration.Fields.Item _
    ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

' Name or IP of Remote SMTP Server
objMail.Configuration.Fields.Item _
    ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
    "smtp.server.com"

' Server port (typically 25)
objMail.Configuration.Fields.Item _
    ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

objMail.Configuration.Fields.Update
----- End of SMTP usage ----->8---

objMail.Send

Set objMail=Nothing
Wscript.Quit

Update: weitere Informationen dort zu finden: VBScript To Send E-Mail, die CDO Standardmäßig scheint es, es verwendet Outlook [Express], so hat es nicht auf meinem Computer gearbeitet, aber Sie können einen bestimmten SMTP-Server verwenden, die gut für mich gearbeitet.

Andere Tipps

Ich weiß nicht, ob ein binäre neben der .bat Datei zählt fallen wie die Installation von Software, aber wenn nicht, können Sie eine href verwenden <= „http://www.blat.net/“ rel = "noreferrer „> blat dies zu tun.

Wenn der Server geschehen (Ich weiß, wie alt diese Frage ist) installiert sein Powershell v2, die CmdLet Send-Mailmessage würde dies in einer Zeile.

Send-MailMessage [-To] <string[]> [-Subject] <string> -From <string> [[-Body] <string>] [[-SmtpServer] <string>] [-Attachments <string[]>] [-Bcc <string[]>] [-BodyAsHtml] [-Cc <string[]>] [-Credential <PSCredential>] [-DeliveryNotficationOption {None | OnSuccess | OnFailure | Delay | Never}] [-Encoding <Encoding>] [-Priority {Normal | Low | High}] [-UseSsl] [<CommonParameters>]

Wenn Sie Outlook / Exchange installiert Sie sollten in der Lage sein CDONTS zu verwenden, um nur mail.vbs-Datei erstellen und es in einer Batch-Datei aufrufen, wie so (amüsant sie im selben Verzeichnis sind)

wscript mail.vbs

für den VBScript-Code überprüfen

http://support.microsoft.com/kb/197920

http://www.w3schools.com/asp/asp_send_email.asp

vergessen die Tatsache, dass sie die beiden Links zu ASP sprechen, sollte es als Stand-alone-Skript mit aus iis gut funktionieren.

Ich denke, dass Sie einige ActiveX oder andere Komponente installieren müssen werden, was von WScript geltend gemacht werden könnte, wie zum Beispiel: http://www.activexperts.com/ActivEmail/ und: http://www.emailarchitect.net/webapp/SMTPCOM/developers/scripting. asp

Andernfalls müssen Sie die gesamte SMTP-Logik schreiben müssen (wenn möglich, nicht sicher) in WScript auf eigene Faust.

Verwenden Sie CDONTS mit Windows Scripting Host (WScript)

Gibt es eine Möglichkeit Sie ohne Bezugnahme auf die außerhalb Schema Urls senden. http://schemas.microsoft.com/cdo/configuration/

Das ist sehr nutzlos, da es nicht alle Boxen haben Zugang außerhalb Internet angenommen werden kann mail intern auf der lokalen Vermittlungsstelle zu senden. Gibt es eine Möglichkeit, die Informationen aus dieser Urls lokal zu speichern?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top