2012-02-21 101 views
8

我已经看到了Outlook的jello-dashboard,它为Outlook添加了GTD功能。我采取的事实是,它只使用JavaScript来做到这一点(使用extjs)。以前我认为MS产品的任何插件都必须在C#或其他MS技术之一上使用VBA。 我已经浏览了一些jello-dashboard的js文件,但一直无法看到(或理解)它使用了我认为是修改Outlook行为的API的位置。使用javascript为Outlook创建插件

这是所有创建一个附加于这将增加delicious.com类似功能到Outlook,即,使用一个标签云的方法的电子邮件的过滤的希望(基于Outlook类别)

我如果有人有指示我可以在这个javascript => Outlook连接上找到信息/示例/教程的指示灯,那么请欣赏。我在das web上没有运气,但从无知开始,我的搜索可能会形成严重。

最好的问候/科尔姆

+4

的Outlook加载项是从根本上COM。我怀疑这个AddIn正在做的是嵌入['IWebBrowser2'](http://msdn.microsoft.com/en-us/library/ie/aa752127%28v=vs.85%29.aspx)来托管Internet Explorer在Outlook内部,他们通过COM处理文档中的外部JavaScript事件。 – vcsjones 2012-02-21 16:53:21

回答

5

爽是不是一个真正的加载项,本身。它所做的是基本上使用一个技巧。这个技巧是在Outlook中创建一个新文件夹。然后,右键单击新文件夹并选择属性。然后点击“主页”标签。选中显示“默认显示此文件夹的主页”的框。然后在地址类型中输入html页面的地址。例如,C:\ test.html。

下面是一些代码,我刮起了,会告诉你在你的收件箱,你可以粘贴到C中的最新邮件的主题:\ test.html的

<script> 

    var ol = window.external.OutlookApplication; 

    function GetCurrentItem(){ 
     var ns=ol.GetNameSpace("MAPI"); 
     var inbox=ns.GetDefaultFolder(6); 
     var items = inbox.Items; 
     items.Sort("ReceivedTime", true); 
     alert(items(1).Subject);  
    } 

</script> 


<input type=button onclick="GetCurrentItem()" value="GetCurrentItem"> 
+0

感谢指针,使用“标准”html/javascript/css打开了一个可能性的全景。 – carbontracking 2012-03-28 14:57:33

+0

任何可以安装的机会?我的意思是,而不必点击创建文件夹和属性等...... – 2013-04-05 14:24:38

+1

因为这可能会被略微考虑为广告,我正在做这个评论。我们正在为Outlook构建一个Javascript API,它将能够使用本地API的许多功能,但更加稳定和统一。这叫做yasoon,如果你有兴趣的话可以查看它! – mnkypete 2013-12-20 10:08:09