[转]制作BlogWriter 博客客户端
这个东东上次发出来有很多问题, 也没太多时间,忙里偷闲, 修改了下.上次发时工具栏提示,还都是toolstripbutton1 , toolstripbutton2..... 这个改过了,呵呵!
最主要的问题:
是文章发布时常会出现图片不能上传,还是本地图片地址.
先说下文章发布的步骤:
先找出文章中所有的图片地址->检查是不是本地图片->如果是本地图片测上传->将文章中的本地图片地址转为上传后图片的网络地址 -> 将文章发布.
本来是使用正则找出所有本地图片地址, 第一想到的是正测表达式有问题. 断点查看,正则没问题.
原来:
如:C:\Documents and Settings\Administrator\桌面\02asds.jpg本图片路径. 在html原文件中会是这样file:///C:/Documents%20and%20Settings/Administrator/桌面/02asds.jpg
程序找不本地路径.
解决:
除去 file:/// 及 %20
---------------------------------
介绍一下插件接口吧.
IPlugin:
/// <summary>
/// 所有插件接口基础.(所有插件接口都继承此接口)
/// </summary>
public interface IPlugin
{
/// <summary>
/// 插件的基本信息
/// </summary>
PlugBaseInfo BaseInfo{get;}
/// <summary>
/// 插件应用的启动方法.加载插件时调用.
/// </summary>
/// <param name="FunctionMenuItem"></param>
void Start();
}
所有插件须实现此接口.
其中PlugBaseInfo是一个包含插件基本信息的结构体.
/// <summary>
/// 插件的基本信息结构体
/// </summary>
public struct PlugBaseInfo
{
/// <summary>
/// 插件名称,将在BlogWrite 程序的功能菜单显示
/// </summary>
public string Name;
/// <summary>
/// 插件的类型.宿主程序通过此属性确定插件类型
/// </summary>
public string Type;
/// <summary>
/// 插件图标
/// </summary>
public Image Ico;
public string Readme;
}
IBlogAPI 接口:
IBlogAPI接口继承自IPlugin接口, 通过现实IBlogAPI接口,以扩展所有支持的博客API类型,目前仅支持MetaWeblog. IBlogAPI接口目前定义还不完善, 下次下说喽.
FunctionMenuService:
此类在BlogWriter.Interface.Service命名空间中.提供对宿主程序功能菜单的操作.
类App :
类App的静态成员Host提供宿主程序公开接口的访问.
插件Demo:
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
//
using BlogWriter.Interface;
using BlogWriter.Interface.Service;
using BlogWriter.Interface.BlogAPI;
namespace Houfeng.BlogWriterPlugins
{
public class PreBrowser:IPlugin
{
public PlugBaseInfo BaseInfo
{
get
{
BlogWriter.Interface.PlugBaseInfo bi = new BlogWriter.Interface.PlugBaseInfo();
bi.Name = "插件名字";
bi.Readme = "插件描述";
bi.Type = "FunctionMenu";
return bi;
}
}
public void Start()
{
FunctionMenuService fm = new FunctionMenuService();
ToolStripMenuItem ti = new ToolStripMenuItem("插件Demo(&B)");
ti.Click += new EventHandler(ti_Click);
fm.AddMenuItem("插件Demo", ti);
}
void ti_Click(object sender, EventArgs e)
{
// 菜单项事件处理
}
}
}
嘿嘿!注意添加对 BlogWriter.Interface.dll 的引用
附:http://www.cnblogs.com/houfeng/archive/2009/08/13/1544784.html
转载于:https://www.cnblogs.com/rainuu/archive/2010/01/05/1639365.html
[转]制作BlogWriter 博客客户端相关推荐
- Android应用开发-小巫CSDN博客客户端UI篇
Android应用开发-小巫CSDN博客客户端UI篇 上一篇是给童鞋们介绍整个项目的概况,从这篇博文开始,后续也会详细介绍整个客户端的开发,但不会贴很多代码,我会贴核心代码然后提供实现思路,想看里面更 ...
- Android应用开发-小巫CSDN博客客户端之获取评论列表
Android应用开发-小巫CSDN博客客户端之获取评论列表 上一篇博客介绍了博文详细内容的业务逻辑实现,本篇博客介绍小巫CSDN博客客户端的最后一项功能,获取评论列表,这个功能的实现跟前面获取文章列 ...
- Android应用开发-小巫CSDN博客客户端之嵌入有米广告
Android应用开发-小巫CSDN博客客户端之嵌入有米广告 上一篇博客给大家介绍如何集成友盟社会化组件,本篇继续带来干货,教大家如何嵌入广告到应用中去.小巫自称专业对接30年,熟悉各大渠道SDK的接 ...
- Android应用开发-小巫CSDN博客客户端之显示博文详细内容
Android应用开发-小巫CSDN博客客户端之显示博文详细内容 上篇博文给大家介绍的是如何嵌入有米广告并且获取收益,本篇博客打算讲讲关于如何在一个ListView里显示博文的详细信息,这个可能是童鞋 ...
- Android应用开发-小巫CSDN博客客户端之嵌入有米广告,android音视频开发面试
然而横幅广告有两种形式,一种是以XML形式布局,另一种是以代码形式布局. 配置有米权限: 有米必要的配置: <activity android:name="net.youmi.andr ...
- Android应用开发-小巫CSDN博客客户端UI篇,kotlin安卓开发教程视频
** ** (图5-博文评论列表) 以上给大家展示的是小巫CSDN博客客户端的主要界面效果,下面来讲解如何布局这样的界面: 启动界面布局 /BlogClient/res/layout/splash.x ...
- Android应用开发-小巫CSDN博客客户端之集成友盟社会化分享组件,2021最新Android框架体系架构面试题
下面是详细的集成过程: 首先来到官网:http://www.umeng.com/ 选择社会化分享,进入查看这个产品的介绍,下载对应平台的SDK,笔者这里自然是选择Android平台: 笔者集成友盟社会 ...
- Android应用开发-小巫CSDN博客客户端Jsoup篇
Android应用开发-小巫CSDN博客客户端Jsoup篇 距上一篇博客已经过去了两个星期,小巫也觉得非常抱歉,因为在忙着做另外一个项目,几乎抽不出空来,这不小巫会把剩下的博文全部在国庆补上.本篇博客 ...
- 天正建筑lisp编程接口_用lisp开发博客客户端
博客客户端如何实现 像我们这种基本没接触过Web开发的人,可能完全没有思路去实现一个博客客户端.事实上 实现起来非常简单. 使用过其他博客客户端(例如Windows Live writer)的人肯定知 ...
最新文章
- 等于x分之a的平方的导数_数学漫谈导数
- ios UIScrollView 中控件自动增加间隔
- Entity Framework Core 生成跟踪列
- linux ntp软件下载,Linux_Linux时区同步问题(安装ntp软件过程),下载了一个windows的NTP服务程序 - phpStudy...
- 零值比较--BOOL,int,float,指针变量与零值比
- 19套最新的免费图标字体集
- 【Python】简单实现显示图片的高斯和中值滤波效果
- HDU 4379 水题,大水,但我WA了很多次,做了很久
- 【开源毕设】一款精美的家校互动APP分享——爱吖校推 [你关注的,我们才推](持续开源更新2)...
- matlab solve 矩阵方程,用solve函数能求解带有未知数的矩阵方程组吗
- 电子书下载:MySQL Stored Procedure Programming
- 常用软件的静默安装参数
- 通信原理(张祖凡)知识点归纳【持续更新】
- java计算机毕业设计基于安卓/微信小程序的健身房健身管理系统
- 基于JAVA汽车租赁系统计算机毕业设计源码+系统+lw文档+部署
- ECMAScript6面对大于0xFFFF的Unicode字符如何正确返回长度
- mysql存储过程之循环语句(五)
- 《牧羊少年的奇幻之旅》-保罗 柯艾略
- php微创手术价格,膝盖疼困扰大半年,终于做了关节镜微创手术
- tp-wdr5620 创建虚拟服务器,TP-Link TL-WDR5620路由器怎么设置? | 192路由网
热门文章
- 网站优化之交换友情链接应注意什么?
- 企业官网营销,网站建设是第一步
- 智慧树插件会被发现吗_输尿管也会得肿瘤?能早期发现吗?
- opennms mysql_MySQL用户工具
- latex hyperref_LaTeX 使用心得
- 开发日记-20190813 关键词 读书笔记《Linux 系统管理技术手册(第二版)》DAY 22
- packettotal.com - PacketTotal - A Free Online PCAP Analysis Engine
- ssh跳板登陆太麻烦,使用expect每次自动登录 利用expect 模拟键盘动作,在闲置时间之内模拟地给个键盘响应...
- go语言笔记——调试还很弱,用gdb来做?可用panic和defer。格式化代码使用gofmt,貌似我的vim插件是自带...
- python 公钥解密