如何使用Java脚本为特定邮箱创建Outlook任务?
我正尝试在仅限IE的本地环境(使用Outlook 2007/2010)中使用JavaScript自动创建Outlook任务。我已经能够使用Outlook ActiveX对象完成此操作,但有一个小问题,即我的方法在用户的默认邮箱中创建任务。(下面代码中的9是任务文件夹的枚举常量)
我需要做的是在单独的共享邮箱中创建任务。我正在寻找一种方法来设置任务到特定的共享邮箱(用户有权访问)的名称,而不是用户的个人(默认)文件夹。到目前为止,我所掌握的内容如下。 function createTask() {
//create Outlook object and map to the task folder
var outlookApp = new ActiveXObject("Outlook.Application");
var nameSpace = outlookApp.getNameSpace("MAPI");
var mailFolder = nameSpace.getDefaultFolder(9); //olFolderTask
//create the task
var task = mailFolder.Items.add('IPM.Task');
//set task properties
task.Subject = 'Subject';
task.Body = "Body of Task";
task.StartDate = "01/01/2012";
task.DueDate = "06/01/2012";
task.ReminderSet = true;
task.Save();
}
我发现了一些可能有用的信息here,可以替代GetFolderFromID中的getDefaultFold函数,但我还没有找到一种方法,可以使用JavaScript/ActiveX仅从共享邮箱的名称中获取所需的Entry ID。
我刚开始使用Outlook,如有任何建议或指导,我将不胜感激。谢谢!
解决方案
尝试使用Session.Stores
,如this SO post中所述。它包含用户配置文件中的所有可用邮箱存储(Store
)。
Store
后,即可使用Store.GetDefaultFolder
检索您感兴趣的共享邮箱任务。
相关文章