为Windows Live Writer写一个简单的插件
前言
很多朋友都在用Windows Live Writer在園子里寫(xiě)博客吧,同樣也有很多朋友都會(huì)在文章結(jié)束的時(shí)候加上版權(quán)信息,更有利于保護(hù)自己的合法權(quán)益。
這些版權(quán)信息的樣式很多,例如:
再如:
如果每次寫(xiě)文章的時(shí)候都重新寫(xiě)一段這樣的版權(quán)信息肯定是很麻煩的。那么,我今天要寫(xiě)的這個(gè)插件就是向博文中插入HTML模板。
要實(shí)現(xiàn)的功能
1、保存已有的模板
2、選中指定模板后插入博文中
目前就這兩點(diǎn)功能吧,簡(jiǎn)單一點(diǎn),如果朋友們還有別的需求,請(qǐng)輕砸……
如何實(shí)現(xiàn)
1、對(duì)于第一個(gè)功能,可以通過(guò)使用XML文檔來(lái)保存已有的模板。
2、對(duì)于插入博文中,可以解析Xml文檔,列出已有模板,選中后點(diǎn)擊“插入”按鈕,實(shí)現(xiàn)插入。
效果圖如下:
Windows Live Writer插件開(kāi)發(fā)
在園子里已有一篇不錯(cuò)的博文來(lái)介紹簡(jiǎn)單的Windows Live Writer插件開(kāi)發(fā)的步驟,講解的很詳細(xì),并且提供了源碼下載,筆者也是通過(guò)這篇博文了解了如何開(kāi)發(fā)Windows Live Writer插件的。
由于這個(gè)插件是對(duì)博文內(nèi)容操作的,所有需要繼承ContentSource類(lèi),并重寫(xiě)方法CreateContent。下面是詳細(xì)步驟:
1、新建C#類(lèi)庫(kù)項(xiàng)目。
2、添加WindowsLive.Writer.Api的引用,如果你已經(jīng)安裝了Windows Live Writer,可以在安裝目錄下找到WindowsLive.Writer.Api.dll文件。如果你使用的是Windows Server 2003操作系統(tǒng),在安裝Windows Live Writer的時(shí)候可能會(huì)出現(xiàn)系統(tǒng)不支持的提示。可以參照筆者的另一篇博文《如何在Windows 2003 中使用Windows Live Writer? - 2010年5月21日學(xué)習(xí)筆記(1)》完成安裝。
3、新建類(lèi)InsertHTMLPlugin,繼承自ContentSource,需要using WindowsLive.Writer.Api;
4、為類(lèi)InsertHTMLPlugin添加特性信息:
[WriterPlugin("01c28aeb-f616-4912-9114-9341d7779f95", "插入HTML模板", PublisherUrl = "http://www.cnblogs.com/youring2", Description = "用來(lái)向博文中插入HTML模板", Name = "插入HTML模板"] [InsertableContentSource("插入HTML模板", SidebarText = "插入HTML模板")]5、重寫(xiě)方法CreateContent。在該方法中需要打開(kāi)插入模板窗口,并完成處理。當(dāng)用戶(hù)點(diǎn)擊“插入”按鈕時(shí),為content添加一個(gè)要插入的字符串即可。
6、添加一個(gè)模板編輯窗口,界面如下:
7、為插件添加一個(gè)圖標(biāo)。MSDN中給出的方法:if you want an image to appear alongside your plugin within the Writer user interface you should specify the WriterPluginAttribute.ImagePath property as part of this attribute. 我們首先向項(xiàng)目中添加一個(gè)圖片,名字為InsertHTML.ico,并放在文件夾 Image中,設(shè)置InsertHTML.ico的生成操作為“嵌入的資源”,我們修改第4步的特性,為特性中添加ImagePath,這樣一來(lái),完整的特性為:
[WriterPlugin("01c28aeb-f616-4912-9114-9341d7779f95", "插入HTML模板", PublisherUrl = "http://www.cnblogs.com/youring2", Description = "用來(lái)向博文中插入HTML模板", Name = "插入HTML模板",ImagePath = "Image.InsertHTML.ico")][InsertableContentSource("插入HTML模板", SidebarText = "插入HTML模板")]
最后,附上源代碼: http://files.cnblogs.com/youring2/QF.Sample.WriterPlugin.InsertHTML.rar
已編譯文件:http://files.cnblogs.com/youring2/QF.Sample.WriterPlugin.InsertHTML.dll.rar
參考作品
1、《為Windows Live Writer開(kāi)發(fā)插件——InsertSearchPageLink》,地址:http://byte365.spaces.live.com/blog/cns!80BC0AFE1EC9BF2!225.entry
2、《Windows Live Writer 插件開(kāi)發(fā)入門(mén)》, 地址:http://www.cnblogs.com/autumoon/archive/2009/01/20/1378880.html
感興趣的朋友可以詳細(xì)的了解一下,另外MSDN中的介紹:《Creating a Content Source Plugin》,地址:http://msdn.microsoft.com/en-us/library/aa702851.aspx。
下面是筆者插入版權(quán)信息的效果:
本文基于署名 2.5 中國(guó)大陸許可協(xié)議發(fā)布,歡迎轉(zhuǎn)載,演繹或用于商業(yè)目的,但是必須保留本文的署名齊飛。如您有任何疑問(wèn)或者授權(quán)方面的協(xié)商,請(qǐng)給我留言。
本文轉(zhuǎn)自齊師傅博客園博客,原文鏈接:http://www.cnblogs.com/youring2/archive/2010/05/23/1741970.html,如需轉(zhuǎn)載請(qǐng)自行聯(lián)系原作者?
總結(jié)
以上是生活随笔為你收集整理的为Windows Live Writer写一个简单的插件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
 
                            
                        - 上一篇: Emmaus Life Sciences
- 下一篇: 理解flask中的蓝图
