2011-04-04 61 views
1

我有一些JScript代码,我已经使用了几年,它能够读取一个XML文件并打开一个Outlook撰写窗口to/cc /主题根据XML数据预填充字段和预先附加的文件。然后用户可以附加更多文件,进行更正并发送电子邮件。代码的核心部分使用CDO来创建新的消息:展望2010年:如何撰写电子邮件从VBScript/JScript

var ol = WScript.CreateObject("Outlook.Application"); 
var msg = ol.CreateItem(olMailItem); 

不幸的是我刚刚发现这不再与Outlook 2010 64位为CDO不再支持工作。 suggestion from Microsoft将更新您的应用程序以使用Outlook对象模型,但我无法找到任何有关如何使用Outlook对象模型从VBScript或JScript打开撰写窗口的示例。当通过VBScript解释器运行时,MSDN上的所有“VB”示例都会产生语法错误。

任何人都可以告诉我任何简短的示例演示如何使用VBScript或JScript与Outlook 2010接口?

编辑:只是意识到问题是我使用MAPI.Session调整附件属性,这是失败的。我想我需要找到这个东西已经换成:

var oSession = WScript.CreateObject("MAPI.Session"); 
oSession.Logon("", "", false, false); 
var oMsg = oSession.GetMessage(strMsgID); 
var oAttachFields = oMsg.Attachments.Item(i+1).Fields; 
... 

回答

1

好了,原来大部分MAPI.Session东西已经合并与实际对象,仍然可以访问使用代码的第一位在我的文章(“Outlook.Application”)中。我只是使用MAPI.Session的东西来隐藏图像附件(因此它们可以在邮件正文中内联显示,而不是附加到电子邮件的文件),但现在似乎将自动合并。

所以我实际上必须做的是删除MAPI.Session的东西,然后一切开始工作。我会很快发布一个代码链接,以防其他人发现它有用。

编辑:Here is the code on GitHub如果有人在一个相对简单的例子之后。