2017-08-31 83 views
1

我目前正在開發Microsoft Word Web Add-in無法在Windows上的MS Word中加載加載項

由於我使用Mac,我已下載了Windows 10 VM並使用Office 365訂閱安裝了Office。

我可以讓Word加載項在Office 365和Word for Mac上運行,但不能在Word 2016 for Windows上運行。

我無法在Windows 10上運行Word 2016來運行任何加載項,無論是我自己寫的還是從商店下載的加載項。 Word總是顯示「加載」的加載項框架,然後它只停留在那裏;加載項從不加載。

我沒有得到菜單選項來附加調試器,並且沒有明顯的錯誤消息。

在虛擬機上運行加載項有一些限制嗎?我在哪裏開始調試呢?

編輯:

我只注意到我自己的側加載的加載在一個彈出打開背後字,對話框然後防止Word開口還拋出一個錯誤加載項。因此,如果我關閉了彈出窗口對話框,則商店中的加載項按預期工作。不過,我不能側裝自己的加載項。

我得到的錯誤是

找不到‘file://msedgewin10/manifest/boilerplate/home.html?_host_Info=Word$Win32$16.01$en-US’。確保路徑或Internet地址是正確的。

但是,如果我將這個地址粘貼到IE中,它將打開沒有任何投訴的文件。很奇怪。

+0

您是否檢查過,如果可能在Microsoft Word的安全中心中選擇停用所有加載項?我不知道在VM中運行的加載項有任何限制。 –

+0

安全設置_seem_沒問題,雖然很明顯我無法訪問「file://msedgewin10/manifest/boilerplate/home.html?_host_Info = Word $ Win32 $ 16.01 $ en-US」。加載項被激活,但是我的側面加載插件存在問題。 – Fergie

+0

感謝您更新您的問題。這讓我想起了我的其他答案:https://stackoverflow.com/a/45938904/1306012您需要在防火牆中添加Microsoft Word的例外以跟蹤鏈接。 –

回答

1

這裏是殼體任何人的修復程序疑惑:

我的初始側加載的加載在被創建導致Word以創建彈出後面字中的錯誤通知,然後阻塞的執行的錯誤所有後續加載項。 所有錯誤彈出窗口必須關閉之前,加載項將再次工作

所以實際上我的側加載插件被打破,這導致所有後續加載項不起作用。

有點愚蠢的錯誤,但一個頭刮刀無所謂。

1

我不建議使用file:// uris進行側面裝載。在Office for Windows中使用SMB Share method通常更容易。當我在Mac上開發時,我傾向於從我的Mac共享wef目錄,因此我的清單更改同時顯示在Mac和Windows中。

彈出的問題是不同的任何人。這可能是因爲您使用JavaScript打開彈出窗口(即window.open(...))。使用這種方法的結果是非常奇怪的行爲,這是由於瀏覽器和瀏覽器引擎Office爲加載項利用的數量。

對於彈出窗口,您應該始終使用使用Office.js中包含的Dialog API。此API是針對跨所有受支持的Office環境(Windows,Mac,iOS,Android,Chrome,Firefox,Safari,IE,Edge)而定製的。當您想要在加載項和對話框之間進行父/子通信時,它特別有用;在Mac或Windows上不容易完成的事情是彈出窗口在與加載項完全不同的瀏覽器實例中運行。

關於開發加載項的一個關鍵技巧是註冊Office 365 Developer Program。這使您可以訪問免費的Office 365開發人員租戶。雖然這可能看起來過於誇張,但它可以大大簡化您的生活,因爲它允許您使用O365的Centralized Deployment功能在多個Office客戶端(Windows,Mac,Online等)上即時部署清單。當談到開發/測試時,這是一個巨大的節省時間。它也會對你的清單進行一些輕量級的驗證,這可以避免一些常見的錯誤。

另一個提示是使用Azure Web Apps來託管加載項。這爲您提供了開箱即用的公開URL和SSL證書(Office對於所有加載項都需要SSL)。最好的部分,你可以跑到10 Azure Web Apps for free。作爲我的加載項構建過程的一部分,我通常會將代碼的大小提高到最大。 Azure支持通過FTP/SFTP,continuous integration(VS Team Services,GitHub或BitBucket)或甚至從local Git repository進行發佈。

+0

嗨馬克,只是爲了澄清 - Word是在一個對話框(「彈出下」)中出現一個錯誤消息,並且默默阻止了所有的加載項執行,直到我碰巧最小化一些窗口並單擊「確定「在所有的對話框上。 感謝您提供關於「Office 365開發人員計劃」的提示,我將對其進行檢查 - 在多個平臺上開發/測試對我們來說非常重要。 與許多JS程序員一樣,我現在發現自己在OSX/* n * x領域多年後,經歷了很多Windows/Office工作,所以提示會很棒。我應該在哪裏與Office Add-In開發人員聊天? – Fergie