不知道大家有沒(méi)有擴(kuò)展Visual Studio 的需求。最近我需要做一個(gè)工具,發(fā)現(xiàn)最好是實(shí)現(xiàn)在VS里面,于是,Google了一下,找到了不少關(guān)于這方面的文章,大多數(shù)是新建一個(gè)項(xiàng)目類(lèi)型為“擴(kuò)展性“的項(xiàng)目,但發(fā)現(xiàn)這個(gè)實(shí)現(xiàn)方式實(shí)在不是一個(gè)簡(jiǎn)單的事情。最終,在codeplex上找到了這個(gè)項(xiàng)目:Managed Menu Extensions
怎么擴(kuò)展VS:
按照項(xiàng)目里的說(shuō)明,要實(shí)現(xiàn)擴(kuò)展vs,有3個(gè)步驟:
1.下載并安裝MME.msi。(不管開(kāi)發(fā)機(jī)還是用戶機(jī),都需要安裝)
2.實(shí)現(xiàn)這個(gè)項(xiàng)目提供的類(lèi)庫(kù)中的接口,在其中實(shí)現(xiàn)你要的功能。
3.在合適的位置里,放置第二步編譯出的dll。
這樣,打開(kāi)vs后,就可以發(fā)現(xiàn)在vs的右鍵菜單(解決方案管理器、代碼窗口)里,都有了在第二步里實(shí)現(xiàn)的菜單了。
美中不足的是,用戶也需要安裝MME.msi。另外, 除了自己擴(kuò)展的菜單外,vs右鍵菜單中會(huì)多出一個(gè) Managed Menu Extensions 的菜單項(xiàng)。
產(chǎn)品特點(diǎn):
隱藏復(fù)雜性:安裝一個(gè)Visual Studio外接其中在幕后工作,并使用MEF來(lái)加載擴(kuò)展。
易用性:你只需要實(shí)現(xiàn)一個(gè)接口, IMenuManager其中包含2種方法,并將生成的程序集的目錄。
更強(qiáng)大:完整的DTE對(duì)象被傳遞給執(zhí)行IMenuManager如果你需要它。但你也可以使用更簡(jiǎn)單的模型,你(可能)知道,從管理菜單擴(kuò)展。
一個(gè)安裝程序:雖然我還提供一個(gè)單獨(dú)的項(xiàng)目模板在Visual Studio庫(kù)。
Simpel:我的野心是要提供的MenuItems的各種事情。 Windows資源管理器, SharpDevelop的和其他人。但在這個(gè)版本我專(zhuān)注于主要目標(biāo)的Visual Studio 2010中。
安裝你自己的菜單擴(kuò)展