Ways to send E-Mails over MS Exchange with VBScript

眉间皱痕 提交于 2019-12-08 07:56:16

问题


I have to write a VBScript which will run on a Windows Server 03 (no Office, SMTP, etc. installed - like it's a fresh installation). This script should send E-Mails over an MS Exchange Server (on another server). So now I have a meeting with the head of the team managing those Servers. To prepare I'd like to know what ways I have to send an E-Mail from a VBScript over an MS Exchange (also including how to authenticate with the Exchange Server)?

As far as my googling goes there is one way with CDO (only SMTP?) which can use the current user for authentication or a clear text username & password.

edit: Or am I mistaking and there is only SMTP for sending E-Mails over Exchange Server? Also that there is only authentication with clear text / using current credentials?

Cheers, Gregor


回答1:


There are other ways as well.

I'd prefer Exchange WebDav for previous versions of Exchange server

and use Exchange WebServices with the latest version of Exchange.

These method requires no client install so can be used anywhere.

WebDav: http://www.msexchange.org/articles/Access-Exchange-2000-2003-Mailbox-WebDAV.html WebService: http://msdn.microsoft.com/en-us/library/aa563009(v=EXCHG.140).aspx

EWS scripting sample: http://blogs.msdn.com/b/vikas/archive/2007/11/22/howto-ews-call-exchange-web-service-from-vbscript.aspx




回答2:


If you use CDO with SMTP and use Windows Authentication (NTLM).

Set objMessage = CreateObject("CDO.Message")
objMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 2

Setting that value to 0 makes it not use authentication, setting it to 1 uses basic authentication, and 2 makes it use NTLM.



来源:https://stackoverflow.com/questions/4071134/ways-to-send-e-mails-over-ms-exchange-with-vbscript

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!