背景
這段時(shí)間公司新做了一個(gè)支付系統(tǒng),里面有N個(gè)后臺(tái)服務(wù),每次有更新修改,拷貝打包發(fā)布包“不亦樂(lè)乎”。。。于是我想要不要自己定制個(gè)打包插件。
部分朋友可能會(huì)認(rèn)為,有現(xiàn)成的可以去找一個(gè),干嘛不用持續(xù)集成工具啊。
1、公司沒(méi)用,也不打算用
2、自己想折騰下,好奇
因此主要是分享這次的學(xué)習(xí)過(guò)程和結(jié)果。
涉及知識(shí)點(diǎn)
大概構(gòu)想下,選擇需要打包的項(xiàng)目-重新編譯-拷貝生成文件到指定目錄-OK,剩下就是交給測(cè)試去做了。
1、Visual Studio Package 初步使用
2、.Net 執(zhí)行Dos命令
3、MSBuild簡(jiǎn)單運(yùn)用
4、File.Copy的使用
下載安裝
Visual Studio 2013 SDK包的下載地址:http://www.microsoft.com/en-us/download/details.aspx?id=40758&fa43d42b-25b5-4a42-fe9b-1634f450f5ee=True
完畢后,在新建項(xiàng)目-C#-擴(kuò)展性,可以見(jiàn)到Visual Studio Package模板選項(xiàng)(見(jiàn)下圖)
第一個(gè)vs插件程序
下一步,勾選Menu Command;下一步,修改Command Name;下一步,取消單元測(cè)試,F(xiàn)inish。恭喜,您的第一個(gè)插件程序就這么誕生了。
編譯后,到生成目錄下,執(zhí)行.vsix文件,安裝完后,重啟VS,點(diǎn)擊[工具]就會(huì)見(jiàn)到您的插件工具。同時(shí)你也可以在擴(kuò)展與更新界面進(jìn)行對(duì)您的插件進(jìn)行卸載。
項(xiàng)目文件簡(jiǎn)介
初建項(xiàng)目,有很多文件,有幾個(gè)下面是需要了解一下的。
1、PackingTools.vsct
2、PackingToolsPackage.cs
3、source.extension.vsixmanifest
PackingTools.vsct
vsct是個(gè)Xml文件,它用來(lái)對(duì)插件按鈕進(jìn)行配置的。
Group是組節(jié)點(diǎn),項(xiàng)目初建,它的Parent為IDM_VS_MENU_TOOLS,對(duì)于這個(gè)我們可以查看 您的vs安裝目錄\Visual Studio2013\VSSDK\VisualStudioIntegration\Common\Inc\vsshlids.h,打開(kāi)文件,我們可以看到除IDM_VS_MENU_TOOLS以外還有IDM_VS_MENU_ADDINS、IDM_VS_MENU_HELP等等,我們嘗試改成IDM_VS_MENU_HELP。
Buttons節(jié)點(diǎn)下,可以添加多個(gè)Button信息,我們嘗試添加一個(gè)Button進(jìn)去,同時(shí)GuidSymbol加多一個(gè)IDSymbol進(jìn)去。修改對(duì)應(yīng)新按鈕的id 和 priority。