让我们创建一个windows live writer的代码插入插件,按照你提供的步骤进行:
- 创建新的类库项目:
首先,我们需要在visual studio中创建一个新的类库项目。我们将这个项目命名为
LiveWriterCodePlugin
。
- 添加必要的引用:
我们需要添加两个关键引用:
第一个引用(
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;"><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代码插入插件的开发和部署。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END