liulun

专注!坚持!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: 订阅 订阅 :: 管理 ::
  227 随笔 :: 7 文章 :: 1232 评论 :: 4 引用

公告

2013年5月12日 #

摘要: 本篇我们讲解怎么用CefGlue开发一个最简单的浏览器一:CefGlue是建立在Cef项目之上的,Cef项目是C/C++的项目;CefGlue只不过是通过PInvoke来访问Cef项目生成的一些dll下面我们来看看Cef项目生成的一些dll和资源都是做什么用的打开这个目录\cef_binary_3.1453.1236_windows_xilium\Releaselibcef.dll-------------------------->Cef的核心类库icudt.dll-------------------------->支持unicode的类库ffmpegsumo.dll-----阅读全文
posted @ 2013-05-12 17:54 liulun 阅读(1927) 评论(34) 编辑

2013年5月2日 #

摘要: 一、泛型入门:我们先来看一个最为常见的泛型类型List<T>的定义(真正的定义比这个要复杂的多,我这里删掉了很多东西)[Serializable]public class List<T> : IList<T>, ICollection<T>, IEnumerable<T>{ public T this[int index] { get; set; } public void Add(T item); public void Clear(); public bool Contains(T item); public int IndexO阅读全文
posted @ 2013-05-02 08:01 liulun 阅读(9007) 评论(51) 编辑

2013年4月20日 #

摘要: 一:上一篇的链接:基于.net开发chrome核心浏览器【一】二:相关资源介绍:chrome Frame: 让IE有一颗chrome的心,看起来不错,但我没有深入研究这个东西。http://www.google.com/chromeframe?hl=zh-CN&quickenable=truehttps://developers.google.com/chrome/chrome-frame/WebKit.Net 已经有一段时间没人更新这个开源项目了,没有研究过 http://sourceforge.net/projects/webkitdotnet/CEF 研究过,很不错的类库,但是是阅读全文
posted @ 2013-04-20 14:18 liulun 阅读(6669) 评论(39) 编辑

2013年3月18日 #

摘要: 说明: 这是本系列的第一篇文章,我会尽快发后续的文章。源起 1.加快葬送IE6浏览器的进程 世界上使用IE6浏览器最多的地方在中国 中国使用IE6浏览器最多的地方在企业中 让他们自己去装个chorme太难了 索性开发个浏览器(其实是浏览器的外壳)给他们 用"代码改变世界"是博客园园友的口号 2.一劳永逸的解决浏览器兼容问题 各种浏览器的CSS hack问题再也不用担心了 甚至公司里前端的职位也可以减少几个了 3.更方便的使用更强大的HTML5 写HTML5的样式,需要考虑各种的浏览器独有的东西, 比如:-webkit-trans...阅读全文
posted @ 2013-03-18 11:10 liulun 阅读(7195) 评论(82) 编辑

2013年2月27日 #

摘要: 一:不愿意把一件事情想透彻 1.需要学习额外的知识来构建必须的理论基础 2.梳理出清晰的脉络 3.不断推敲每个环节之间的逻辑关系 ------------------- 1.轻易采信未经证实的信息 2.忽略无关系甚至有矛盾的逻辑关系 二:不愿对问题设立防范机制 1.问题发生前 考虑到什么环节可能会发生问题 2.问题发生后 思考问题发生的原因,并设立防范机制三:思维惯性 1.碰到反对的意见或挑战 《1》不假思索的反驳 《2》习惯性的接受或忽略 2.对反对意见的分析 《1》在自己的逻辑框架下分析 《2》在意见提出者的逻辑框架下分析四:放弃独立思考 1.对权威信息不加甄别的采纳 2.放任...阅读全文
posted @ 2013-02-27 10:51 liulun 阅读(189) 评论(0) 编辑

2013年2月26日 #

摘要: 千万别被这个页面的滚动条吓到!!!我相信你一定能在30分钟之内看完它!!!在说LINQ之前必须先说说几个重要的C#语言特性一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在foreach一个集合的时候, 也要为遍历的集合的元素,指定变量的类型 隐式类型的出现, 程序员就不用再做这个工作了。 (2)使用方法 来看下面的代码: var a = 1; //int a = 1; var b ...阅读全文
posted @ 2013-02-26 19:10 liulun 阅读(6104) 评论(97) 编辑

2013年2月1日 #

摘要: /// <summary> /// 选择排序 /// </summary> /// <param name="arr"></param> static void Sort1(int[] arr) { int len = arr.Length; for (var i = 0; i < arr.Length; i++) { int min = i; for (var n = i + 1; n < arr...阅读全文
posted @ 2013-02-01 13:59 liulun 阅读(76) 评论(0) 编辑

2013年1月21日 #

摘要: 第一个http://download.microsoft.com/download/b/7/1/b71d5305-618d-4b82-858b-386db3cc4453/msxml6.msi如果不打这个布丁,会出现:“写入项目文件时出错,没有注册类别。”的错误.从而导致无法创建项目第二个http://download.microsoft.com/download/2/9/B/29B43072-D750-4276-8408-D9EEE31E4BCB/WindowsServer2003-KB971513-x86-CHS.exe如果不打这个布丁,选中代码的时候,VS2010会崩溃阅读全文
posted @ 2013-01-21 13:04 liulun 阅读(100) 评论(0) 编辑

摘要: document.write("js获取到的浏览器版本信息:"); document.write("<br />"); document.write("Browser: "); document.write(navigator.appName + ""); document.write("<br />"); document.write("Browserversion: "); document.write(navigator.appVersion +阅读全文
posted @ 2013-01-21 13:04 liulun 阅读(34) 评论(0) 编辑

2013年1月12日 #

摘要: function NameSpace(ns) { if (!ns) { return null; } var arr = ns.split('.'); //第一次调用的时候window.utry的值为{}; //第二次调用的时候window.utry的值为window.utry; window[arr[0]] = window[arr[0]] || {}; //obj是window.utry的引用 ...阅读全文
posted @ 2013-01-12 14:29 liulun 阅读(38) 评论(0) 编辑

2013年1月6日 #

摘要: var test = function (arg1, arg2) { alert(arg1 + "_" + arg2); } //alert出来的是 liu_lun test("liu", "lun"); //alert出来的是 liulun_undefined test("liulun"); //alert出来的是 liu_lun test("liu", "lun", "cnblog"); var test2 = functi...阅读全文
posted @ 2013-01-06 17:26 liulun 阅读(35) 评论(0) 编辑

2013年1月4日 #

摘要: 第一步:KSDLL2.idl文件中 dispinterface _DKSDLL2 { properties: methods: [id(1)] void CheckIt(); [id(2)] BSTR GetIt(); };第二步:KSDLL2Ctrl.h文件中protected: void CheckIt(void); BSTR GetIt();第三步:KSDLL2Ctrl.cpp文件中// 调度映射BEGIN_DISPATCH_MAP(CKSDLL2Ctrl, COleControl) DISP_FUNCTION_ID(CKSDLL2Ctrl, "CheckIt", d阅读全文
posted @ 2013-01-04 16:56 liulun 阅读(254) 评论(2) 编辑

2012年12月27日 #

摘要: static string GetHtml(string url) { HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; request.Timeout = 16 * 1000; HttpWebResponse response = request.GetResponse() as HttpWebResponse; Stream stream = response.GetResponse...阅读全文
posted @ 2012-12-27 22:04 liulun 阅读(347) 评论(4) 编辑

2012年10月15日 #

摘要: USE [UTMP_RC_121213]GO/****** Object: StoredProcedure [dbo].[PageProc] Script Date: 01/05/2013 08:45:56 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author: 刘晓伦-- Create date: 12-10-13-- Description: 分页存储过程,-- 如果使用ExcuteReader()...阅读全文
posted @ 2012-10-15 08:40 liulun 阅读(158) 评论(0) 编辑

2012年7月9日 #

摘要: 当一个web api抛出一个异常后此异常会被转化成一个HTTP响应错误代码为500的服务错误但是如果你不想让客户端看到500的错误码你也可以自定义错误码如下代码当用户输入的ID没有与之相关的数据则返回了错误码为404的错误(页面未找到)public Product GetProduct(int id) { Product item = repository.Get(id); if (item == null) { throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode....阅读全文
posted @ 2012-07-09 14:47 liulun 阅读(1256) 评论(2) 编辑

2012年6月20日 #

摘要: 默认的规则 在ASP.NET MVC4中 global.asax.cs代码中并无注册默认路由规则的代码 代码如下: public class WebApiApplication : System.Web.HttpApplication { protected void Application_Start() { AreaRegistr...阅读全文
posted @ 2012-06-20 17:34 liulun 阅读(1979) 评论(5) 编辑

2012年6月16日 #

摘要: 蛋疼的路由规则约定在上一篇文章中我们成功通过AJAX获取到了服务器的数据,而且服务器根据请求的类型,格式化数据之后再传给客户端。然而在上一篇的实例中,我们为controller程序增加一个GetProducts方法让这个方法与GetAllProducts方法逻辑一致 public IEnumerable<Product> GetAllProducts() { return products; } public IEnumerable<Product> GetProducts() { ...阅读全文
posted @ 2012-06-16 14:57 liulun 阅读(2533) 评论(5) 编辑

2012年6月14日 #

摘要: 简介ASP.NET Web API是一个可以简化创建HTTP服务的框架它支持包括浏览器和移动设备在内的各种客户端ASP.NET Web API是在.NET Framework上创建RESTful应用程序的理想平台译者注:关于RESTful web服务可以参见这里:http://zh.wikipedia.org/wiki/REST准备ASP.NET MVC 4包括ASP.NET Web API,请在这里安装:http://www.asp.net/web-api使用Visual Studio 2010或者Visual Studio 2012都可以开发关于ASP.NET Web API的特性请看这里阅读全文
posted @ 2012-06-14 16:03 liulun 阅读(2812) 评论(3) 编辑

2012年5月29日 #

摘要: 首先来看一下效果页面加载之初节点全部展开后首先数据库的表结构如下其中Id为主键,PId为关联到自身的外键两个字段均为GUID形式层级关系主要靠这两个字段维护其次需要有一个类型 public class MenuType { public Guid Id { get; set; } public Guid PId { get; set; } public string MenuName { get; set; } public string Url { get; set; } public int OrderNum...阅读全文
posted @ 2012-05-29 14:30 liulun 阅读(2507) 评论(5) 编辑

2012年5月18日 #

摘要: 关于RaphaëlRaphaël是一个在网页上绘图的js类库,非常小压缩版只有89k左右官方宣称兼容各种主流浏览器,据笔者测试在IE6下尚有一些问题(不过这些与本文无关)他是使用js来创建vml或svg来绘图的缘起项目中不能使用Silverlight或者flash来解决绘图和拖动的问题而且为了项目效果较好,要求拖动的时候箭头能动态改变起点和重点,别且箭头要改变方向所以只能考虑JS了效果演示http://www.mrlh.net/flowchart/demo.htm[已经不能访问了]源码引用 <script language="javascript"阅读全文
posted @ 2012-05-18 11:17 liulun 阅读(3856) 评论(7) 编辑

2012年3月30日 #

摘要: 原文地址:http://www.infoq.com/news/2012/03/websocket-windows鉴于Windows 8客户预览版已经很好的支持WebSocket协议和WebSocket APIasp.net 开发人员可以使用System.Web.Websockets类库来实现双向通信的功能在windows 8客户预览版和Server beta版本中IE10、所有的微软WebSocket客户端和服务端功能都支持最新版本的 IETF WebSocket 协议另外,IE10还实现了W3C的候选版 WebSocketAPI微软IE团队的官方博客详细解释了这些内容与此同时,ASP.NET阅读全文
posted @ 2012-03-30 10:29 liulun 阅读(749) 评论(0) 编辑

2012年3月28日 #

摘要: 什么是Bootstrapper(引导程序) bootstrapper负责初始化使用Prism类库搭建的应用程序 使用bootstrapper,你可以更方便的控制Prism类库组件与你的应用程序之间的关系 Prism类库包含一个默认的抽象基类Bootstrapper 这个类型可以与任何容器一起使用 这个类型中的大多数方法都是虚方法 你可以在你的bootsrapper实现中重写这些方法 引导程序执...阅读全文
posted @ 2012-03-28 11:43 liulun 阅读(1485) 评论(0) 编辑

2012年3月26日 #

摘要: 索引【翻译】WPF应用程序模块化开发快速入门(使用Prism框架)【上】【翻译】WPF应用程序模块化开发快速入门(使用Prism+MEF)【中】系统启动系统使用Bootstrapper类型来启动程序,并初始化主窗口 /// <summary> /// Interaction logic for App.xaml /// </summary> public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { ...阅读全文
posted @ 2012-03-26 09:51 liulun 阅读(2157) 评论(0) 编辑

2012年3月19日 #

摘要: 索引【翻译】WPF应用程序模块化开发快速入门(使用Prism框架)【上】编译并运行快速入门需要在VisualStudio 2010上运行此快速入门示例代码下载:ModularityWithMef.zip先重新生成解决方案再按F5运行此示例说明:在此快速入门示例解决方案的ModularityWithMef.Desktop程序集中加入了生成成功时的“后期生成事件命令行”IF NOT EXIST "$(TargetDir)\DirectoryModules"mkdir "$(TargetDir)\DirectoryModules"此命令含义为:如果在此程序集的阅读全文
posted @ 2012-03-19 13:14 liulun 阅读(1737) 评论(1) 编辑

2012年3月16日 #

摘要: 这篇快速入门文章包括如何使用Prism进行编码、探索和创建模块的示例创建模块:模块是实现了IModule接口的类,可以通过声明特性来给模块命名、控制其初始化、定义依赖等注册模块:模块可以通过以下方式注册:直接使用代码:可以直接使用代码把模块注册到模块目录这样你就可以咱找业务逻辑来决定哪些模块需要注册到系统中来在代码中注册的模块需要引用到系统中来,不能在运行时动态加载使用配置文件:Prism支持通过加载一个配置文件来注册模块这与在Silverlight中使用XAML方法注册模块的场景非常类似在配置文件中声明模块可以让系统决定什么时候加载和初始化模块通过监视目录可以指定一个目录,如果有程序集被添加阅读全文
posted @ 2012-03-16 08:15 liulun 阅读(2473) 评论(11) 编辑

2012年2月26日 #

摘要: 这是我所发的关于ASP .NET 4.5系列博文的第七篇文章。下一个版本的.NET和Visual Studio包括大量的新特性和新功能在开发ASP.NET 4.5 WebForms和Mvc的时候你会看到很多功能上的改进(不管是基于核心ASP.NET还是一些其他的扩展)在本篇文章中将会涵盖下一个版本的VisualStudio关于支持在ASP.NET中使用CSS3的一些改进CSS Color Picker在VisualStudio的早起版本中,CSS编辑器的智能提示引擎包括了一个颜色名称的下拉列表(硬编码)新版本的VisualStudio使用了一个功能齐全的颜色选择器可以很容易的创建新的颜色样式也阅读全文
posted @ 2012-02-26 14:37 liulun 阅读(1493) 评论(4) 编辑

2012年2月12日 #

摘要: 原文地址:http://www.infoq.com/news/2012/02/WCF-4.5Ido Flatow发表了一些列的博客,来讲述.NET4.5中关于WCF的更新链接地址:http://blogs.microsoft.co.il/blogs/idof/archive/2011/10/05/what-s-new-in-wcf-4-5-automatic-https-endpoint-for-iis.aspx(有时间的话我会陆续翻译)出于削减复杂性的目的,WCF自动生成的配置文件将会变得非常、非常的小。自从第一个版本的WCF以来,开发人员发现他们需要维护一个大概有30个配置节的app.co阅读全文
posted @ 2012-02-12 14:40 liulun 阅读(1740) 评论(4) 编辑

2012年2月5日 #

摘要: 原文地址:http://weblogs.asp.net/scottgu/archive/2011/01/18/running-an-asp-net-mvc-3-app-on-a-web-server-that-doesn-t-have-asp-net-mvc-3-installed.aspx为了更符合中文阅读习惯,我对原文做了小幅度修改最近我们发布了一些新的Web产品 - 包括ASP.NET MVC 3。至今为止,我们已经获得了大量的反馈。有几个朋友在问我一个问题:“我的网站托管服务提供商目前还不支持ASP.NET MVC 3 - 你知道他们将来什么时候会安装吗?”好消息是,您不必等他们在We阅读全文
posted @ 2012-02-05 12:16 liulun 阅读(1830) 评论(3) 编辑

2012年2月3日 #

摘要: 索引SilverLight企业应用框架设计【五】客户端调用服务端(使用JSON传递数据,自己实现RESTful Web服务)SilverLight企业应用框架设计【四】实体层设计+为客户端动态生成服务代理(自己实现RiaService)SilverLight企业应用框架设计【三】服务端设计SilverLight企业应用框架设计【二】框架画面SilverLight企业应用框架设计【一】整体说明首先我们设计的窗体如下xaml代码如下:<location:BasePage x:Class="RTMDemo.Frame.Pages.Sys.MenuLE" xmlns=&quo阅读全文
posted @ 2012-02-03 15:25 liulun 阅读(2247) 评论(8) 编辑

2012年2月2日 #

摘要: 来个索引 SilverLight企业应用框架设计【四】实体层设计+为客户端动态生成服务代理(自己实现RiaService) SilverLight企业应用框架设计【三】服务端设计 SilverLight企业应用框架设计【二】框架画面 SilverLight企业应用框架设计【一】整体说明 在上一节中讲到的自动生成的服务代理类核心代码,如下 public event Servi...阅读全文
posted @ 2012-02-02 20:34 liulun 阅读(1667) 评论(6) 编辑

仅列出标题  下一页