2012-02-21 96 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