【WLW】plugin development


【目的】

  1. 創建自己的Windows Live Writer Plugins

【環境】

  1. Windos Vista
  2. Visual studio 2008

【準備】

  1. icon.gif(20x18)
  2. system.windows.forms.dll
  3. WindowsLive.Writer.Api.dll
  4. GUID產生器 http://www.guidgen.com/Index.aspx

【步驟】

  1. 打開 Visual studio 2008, 開一個 C# 的案子。
  2. class1.cs 改成 plugin.cs
  3. 由於我WLW是Portable的,進入步驟#4加入參考。
  4. 加入參考,加入system.windows.forms.dll/WindowsLive.Writer.Api.dll
    image
  5. 加入 icon,gif,並定義 命名空間建置動作。
    image 
    ps.此部分上有問題,所以目前打開WLW會跑出下面警告,這問題還需解決。
    參考 http://coolbirdsss.blogspot.com/2008/05/wlw-pluginicon.html
    image  
  6. 貼上程式碼
    using System;
    using System.Collections.Generic;
    using System.Text;
    using WindowsLive.Writer.Api;
    using System.Windows.Forms;
    
    namespace LiveWriterExample
    {
        [WriterPlugin("d2c99304-8648-4696-9ef1-6a82a2d070c9",
            "LiveWriterExamplePlugin",
            Description = "Makes highlighted text bold.",
            HasEditableOptions = true,
            ImagePath = "icon.gif",
            Name = "Bold Text Plugin",
            PublisherUrl = "http://www.liveside.net")]
        [InsertableContentSource("Bold Text")]
    
        public class LiveWriterExamplePlugin : ContentSource
        {
            public override DialogResult CreateContent
                (IWin32Window dialogOwner, ref string content)
            {
                // If nothing is highlighted, content will be empty.
                // If this is the case, the plugin does nothing.
                if (!string.IsNullOrEmpty(content))
                    content = string.Format("<b>{0}</b>", content);
    
                return DialogResult.OK;
            }
    
        }
    }
  7. 點選 建置 | 建置方案
  8. 產生Bin/Debug/ClassLibrary1.dll,把這個dll放到WLW Plugin的路徑。
  9. 打開wlw,右邊會出現plugin的選項。
  10. 承 #8 / #9,如果不想每次都這麼麻煩的話,可以在 專案屬性 定義 建置事件偵錯 屬性
    image
    image
  11. 其它請參考下列文件。

【結果】

  1. 插入視窗的 Bold Text 選項就是剛剛跑出來的結果。
    image

【參考】

 

Ed32. Copyright 2008 All Rights Reserved Revolution Two Church theme by Brian Gardner Converted into Blogger Template by Bloganol dot com