Is er een script om mails te versturen in Windows?

wout, 12 jaar
2 september 2012

Ik heb een script in vbscript van het internet gekopieerd dat mails verzendt. Maar bij de laatse regel (objMessage.Send) geeft hij een foutmelding, namelijk "regel 6 teken 1 ongeldige configuratie sendusing" Het hele script luidt: Set objMessage = CreateObject("CDO.Message") objMessage.Subject = "Onderwerp" objMessage.From = "test@hotmail.com" objMessage.To = "iemand.abc@live.nl" objMessage.TextBody = "hier kan wat typen" objMessage.Send

Antwoord

Het probleem is dat je van je computer verwacht dat hij een mail verstuurd, terwijl computers dat helemaal niet kunnen. De enige die een mail kan afleveren is een SMTP-server. Wanneer je een mail stuurt vanuit Outlook of Windows Mail doe je dat altijd met een account die je eerst hebt moeten instellen. Daarin staat een SMTP-server. Die SMTP server krijg je van je provider, degene die internet levert bij jou thuis. Dat kan Telenet of Belgacom ADSL, of EDPNet of een hele resem andere providers zijn. Je krijgt bijna altijd een emailadres bij zo'n provider, en in de handleiding over hoe je die emailaccount moet gebruiken staat het SMTP-adres vermeld. Typisch heeft dat de vorm van "SMTP.Provider.be". Dit is het adres van de server die de verantwoordelijkheid over je mail overneemt op het moment dat je hem stuurt. Stel dat jij vanuit Telenet een mail stuurt naar iemand met Belgacom, dan stuur jij de mail eerst door naar de Telenet-SMTP server. Deze stuurt hem door naar de Belgacom POP3-server. De Belgacom server houdt de mail dan bij om hem af te leveren wanneer de bestemmeling erom vraagt. Het vervelende aan zo'n SMTP-server is dat ze alleen maar mails doorsturen van iemand die op hun eigen netwerk zit. Je moet dus op zoek naar de SMTP-server voor jouw provider. Dat wil ook zeggen dat als je het script geschreven hebt, en het werkt perfect bij jouw thuis, je het niet zomaar op school of bij iemand anders kan uitvoeren. Dan moet je altijd de SMTP-server van dat netwerk zoeken, en die instellen. Hoe werkt dat dan bij gratis online diensten zoals Gmail en Hotmail? Daar werk je via de webbrowser, en die verbindt zichzelf door aan de SMTP-server. Wanneer je Hotmail of Gmail wil instellen in Outlook of Windows Mail, dan moet je ook weer de SMTP-server ingeven. Gmail staat dat toe, maar met gebruikersnaam en paswoord. Wanneer je dus geen SMTP-server kan vinden, kan je er altijd zo eentje gebruiken, maar dan wel met nog wat extra commando's. Maar om een lang verhaal kort te maken, toevoegen van de volgende regels zou het probleem moeten oplossen. objMessage.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.provider.be" Wanneer authenticatie nodig is voeg je ook het volgende toe. objMessage.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic objMessage.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/sendusername") = "youruserid" objMessage.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "yourpassword" En zowiezo moet je deze configuratie nog toepassen. objMessage.Configuration.Fields.Update

Reacties op dit antwoord

Er zijn nog geen reacties op deze vraag.

Enkel de vraagsteller en de wetenschapper kunnen reageren op een antwoord.

Zoek andere vragen

© 2008-2022
Ik heb een vraag wordt gecoördineerd door het
Koninklijk Belgisch Instituut voor Natuurwetenschappen