让我们创建一个windows live writer的代码插入插件,按照你提供的步骤进行:
- 创建新的类库项目:
首先,我们需要在Visual Studio中创建一个新的类库项目。我们将这个项目命名为
LiveWriterCodePlugin。
- 添加必要的引用:
我们需要添加两个关键引用:
using WindowsLive.Writer.Api; using System.Windows.Forms;
第一个引用(
WindowsLive.Writer.Api)的DLL文件位于Windows Live Writer安装目录的根目录下,文件名为
WindowsLive.Writer.Api.dll。我们需要手动添加这个引用。
第二个引用(
System.Windows.Forms)是.NET Framework的一部分,Visual Studio会自动添加。
- 添加处理用户插入代码的类文件:
我们将创建一个名为
ContentProcessor的静态类,用于处理用户插入的代码:
using System.Web;
<p>public static class ContentProcessor
{
public static string ProcessedContent { get; private set; }</p><pre class="brush:php;toolbar:false;">public static void Process(string originalContent)
{
ProcessedContent = (!string.IsNullOrEmpty(originalContent)
? string.Format("<fieldset style=\"background-color:#E0EFF6;color:#15428B\">{0}</fieldset>", HttpUtility.HtmlEncode(originalContent))
: string.Empty);
}}
- 创建Windows Form窗体:
我们将创建一个简单的Windows Form窗体,用于让用户输入代码。窗体中包含一个文本框和一个确定按钮。

为确定按钮添加点击事件处理程序:
private void button1_Click(object sender, EventArgs e)
{
ContentProcessor.Process(this.textBox1.Text);
this.Close();
}- 创建插件类文件:
我们将创建一个继承自
ContentSource的类,用于实现Windows Live Writer插件的功能:
[WriterPlugin("7c371eef-e350-4aae-af28-91613a9137e3", "xland", Description = "insert code plugin", Name = "xland", PublisherUrl = "<a href="https://www.php.cn/link/91a8651859745d25095a46fdda893cfa">https://www.php.cn/link/91a8651859745d25095a46fdda893cfa</a>")]
[InsertableContentSource("insert code", SidebarText = "insert code")]
public class MyPlugin : ContentSource
{
public override DialogResult CreateContent(IWin32Window dialogOwner, ref string content)
{
new ProcessForm().ShowDialog();
content = ContentProcessor.ProcessedContent;
return (!string.IsNullOrEmpty(content) ? DialogResult.OK : DialogResult.No);
}
}- 部署插件:
完成开发后,我们需要将生成的DLL文件放置在Windows Live Writer的安装目录下的
Plugins文件夹中。
- 使用插件:
现在,我们可以在Windows Live Writer中使用这个插件来插入代码。

- 自定义博客样式:
为了让插入的代码在博客中显示得更好,我们可以在博客园后台通过CSS定制页面,添加以下样式:
pre {
white-space: pre-wrap; /<em> css-3 </em>/
white-space: -moz-pre-wrap; /<em> Mozilla, since 1999 </em>/
white-space: -pre-wrap; /<em> Opera 4-6 </em>/
white-space: -o-pre-wrap; /<em> Opera 7 </em>/
}</p><ul><li>html pre {
word-wrap: break-word; /<em> Internet Explorer 5.5+ </em>/
white-space: normal; /<em> Internet Explorer 5.5+ </em>/
}这个样式可以防止代码行过长而撑破页面。
源代码下载:https://www.php.cn/link/7577c54ea4b4258f50a4477dbd1bca3a
通过以上步骤,我们就完成了一个简单的Windows Live Writer代码插入插件的开发和部署。











