自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

關(guān)于VS2003插件的正確理解與使用

開發(fā) 后端
本文講述如何使用VS2003插件,怎樣使用VS2003插件。這些內(nèi)容都是我今天花花了一周的時間查閱資料并像IT精英學(xué)習(xí)出來的,中間可能有不少錯誤是我沒有挑出的,歡迎大家指正。

最近處理了好幾個VS2003插件的問題,總結(jié)出一些經(jīng)驗,在此與大家分享一下。希望大家能夠多多提出建議與意見,VS2003插件真的很讓人頭疼啊,下面就拿出來給諸位小看一下。

首先介紹一些注意點:

1. 一定要把宏安全級別設(shè)置為Medium以下,默認是High,肯定不允許運行任何Addin,這點一定要注意,否則再怎么改程序也是徒勞

2. 在開發(fā)Addin的機器上,建議僅安裝一個版本的Office,否則可能因為引用的Office Library Reference混淆,導(dǎo)致在其他機器上無法正常加載

3. 如果你開發(fā)的是Office XP的Add-in,必須安裝Office XP PIA (primary interop assemblies),這是對Office COM對象的封裝庫。

你可以到http://www.microsoft.com/downloads/details.aspx?familyid=C41BD61E-3060-4F71-A6B4-01FEBA508E52&displaylang=en下載。

4. 在創(chuàng)建Addin項目時一定要正確選擇Office目標程序,如Word, Excel, Visio, PowerPoint等,如下圖所示:

5. 在創(chuàng)建Addin向?qū)У牡箶?shù)第二步,通常情況下一定要將兩個選項都選中,特別是第二個選項,否則可能由于不支持所有用戶都運行,而出現(xiàn)未自動加載的情況

接下來是常見問題解答

問題1 在Office插件加載時,即使加載失敗也不會有任何提示,如果出現(xiàn)Assembly加載錯誤,我該如何跟蹤這些錯誤
我 們可以在.net自帶的工具中找到一個叫做Assembly Binding Log Viewer的工具,通過它我們可以幾乎所有的assembly加載異常。要注意的是,每個版本的.net都自帶了一個相應(yīng)版本的Assembly Binding Log Viewer,所以運行的時候要看一下調(diào)用的是哪個版本的。比如我們現(xiàn)在要調(diào)試基于.net 1.1開發(fā)的Office插件,可以通過以下步驟運行:

1. 點擊 開始 > Microsoft Visual Studio .NET 2003 > Visual Studio .NET 工具 > Visual Studio .NET 2003 命令提示,

2. 在進入Visual Studio 2003命令行模式下,輸入fuslogvw.exe

這時我們就可以看到該工具的界面了,如圖:

有關(guān)該工具的詳細信息可以看http://msdn2.microsoft.com/en-us/library/e74a18c4(vs.80).aspx

同樣的,如果我們要啟動.net 2.0的Assembly Binding Log Viewer就在VS2005的命令行下輸入fuslogvw。

問題2 Visual Studio 2005開發(fā)的Office插件無法在Office中運行
這個問題可能是由于沒有安裝KB908002中提到的prerequisite造成的,可以去下面的地址下載該文檔中提到的補?。篽ttp://support.microsoft.com/kb/908002

安裝完成后,我們可以在Add-in的安裝項目的prerequisites中找到一個新的組件。

如上圖所示,其中多了一個Shared Add-in Support Update for Microsoft .NET Framework 2.0 (KB908002)#t#

問題3 如何制作兼容多個版本Office的Office Addin
通 常情況下,我們編寫的Add-in都是直接用向?qū)傻?,且使用的是早期綁定技術(shù)(early binding)。但在許多需求中,我們需要制作一個能夠兼容多個Office版本的Add-in,這時我們就不能使用早期綁定了,而應(yīng)該使用后期綁定 (late binding)。關(guān)于早期綁定和后期綁定的詳細信息,請見http://word.mvps.org/FAQs/InterDev/EarlyvsLateBinding.htm

問題4 通常Addin設(shè)置保存在注冊表的什么位置
以O(shè)ffice 2003 Word Add-in為例,通常會保存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Word\Addins中。
假設(shè)我們有一個名字為MyAddin1的Addin,那么它就會保存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Word\Addins\MyAddin1.Connect中。

對于Excel Add-in來說,也是類似的,通常保存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Excel\Addins中,依此類推。

在 每個Add-in的設(shè)置屬性中有一個重要的標志LoadBehavior,這個屬性是保存在XXXX.Connect中的,類型為DWORD,這個值直接 決定了Addin的啟動模式,默認值為3表示Office應(yīng)用程序一啟動就運行,這個設(shè)置與我們在Addin向?qū)е羞x擇的"I would like my Add-in to load when the host application loads"是對應(yīng)的。

問題5 當(dāng)確定你的Add-in應(yīng)該可以正確加載,但在啟動時沒有加載,這是怎么回事
如果一個Add-in因為某些原因在啟動時加載失敗, Office應(yīng)用程序會自動把LoadBehavior改成8,這表示僅在需要加載時才加載該Add-in,而不是在Office啟動時。所以這時可以到 與該Add-in對應(yīng)的注冊表項中檢查一下LoadBehavior值是否正確,如果為8,一定把它改成3。

問題6 你不確定Add-in的哪一部分出了問題,該如何調(diào)試
首先必須確定assembly的引用沒有出現(xiàn)問題,關(guān)于如何檢測引用出錯的情況已經(jīng)在問題1中說明。

看來VS2003插件真的很苦悶啊!

責(zé)任編輯:chenqingxiang 來源: limmo(玄月)專欄
相關(guān)推薦

2009-11-25 13:35:05

VS2003使用

2009-11-27 10:35:04

VS2003部署項目

2009-11-30 10:34:28

VS2003編譯

2009-11-26 10:02:06

2009-11-27 09:24:29

VS2003命令

2009-12-09 16:52:51

VS 2003插件

2009-11-27 13:55:50

VS2003顯示行號

2009-11-26 08:57:01

VS2003發(fā)布

2009-11-27 08:59:29

VS2003配置文件

2009-12-15 13:39:43

2009-11-26 17:02:29

VS2003配置

2009-12-01 10:54:48

VS2003 英文版

2009-11-26 11:30:12

VS2003控件

2009-11-30 09:27:38

VS2003源代碼

2009-11-25 10:00:48

VS2003系統(tǒng)

2009-11-27 14:09:44

VS2003模板

2009-12-01 16:32:20

VS2003安裝步驟

2009-11-30 10:20:47

2009-11-30 09:10:40

VS2003斷點無效

2009-11-30 09:16:44

VS2003源代碼
點贊
收藏

51CTO技術(shù)棧公眾號