小李子

小小的蜗牛,慢慢的爬。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2012年3月20日

摘要: 6-30更新内容: 由于编写代码的时候没有考虑到更新文件存放的真实位置,所以可能导致软件目录下其他文件夹文件不能更新,代码稍作修改: 更新配置文件中用相对路径表示文件更新后的保存位置,如: <file name="doc\1.rar" src="http://localhost/1.rar" version="3" size="1394007" isrestart="false" /> 程序中需要判断是否存在软件目录下的doc目录,并且在临时更新文件夹update中创建临时更新二级目 阅读全文

posted @ 2012-03-20 17:31 ljl_falcon 阅读(373) 评论(0) 推荐(0)

摘要: 上一篇博文实现了我的程序的自动升级,这篇来介绍我的程序的扩展部分--插件结构园子里有很多关于插件架构的文章,有大的整个框架也有小的功能代码,每每阅读都有不少收获!现在就来实现我的插件架构,部分内容参考学习自其它地方,在此表示感谢。我要实现的是给Winform程序添加扩展接口,详细的就不多说了,直接按照我自己的理解来贴代码。一,宿主程序提供公开接口供插件程序调用: 插件要如何与宿主程序通讯或使用宿主程序资源呢??? 首先插件程序不可能添加对宿主程序的引用,所以首先实现一个IApplication接口,宿主程序继承自IApplication接口 IApplication接口描述宿主程序要提供给.. 阅读全文

posted @ 2012-03-20 17:29 ljl_falcon 阅读(282) 评论(0) 推荐(0)

摘要: 创建:5/16/2005最后更新:5/16/2005编写:谈少民 SteveTanEmail:tansm@21cn.com摘要:本文从另外一种角度来设计权限解决方案,详细解释了如何使用范围、授权和证书的概念来处理复杂的权限问题。目录:说在前面的在讲这个所谓的“终极”解决方案之前,我想先说明几点:1、首先所谓的“终极”是我认为的“终极”。我对当今世界的权限处理的“国际水平”并不了解太多,只知道一些典型的“Who,How,What"模型,什么角色。如果你现在就异常失望了,那真是对不起,浪费了您宝贵的时间,请现在关闭窗口;2、看这篇文章,我假定你已经有一些权限设计的实际开发经验和知识。权限 阅读全文

posted @ 2012-03-20 16:40 ljl_falcon 阅读(306) 评论(0) 推荐(0)

摘要: 1. 窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wParam, lParam), 当窗口收到消息时系统就会调用此窗口过程来处理消息。(所以叫回调函数)2 消息类型1) 系统定义消息(System-Defined Messages)在SDK中事先定义好的消息,非用户定义的,其范围在[0x0000, 0x03ff]之间, 可以分为以下三类:1> 窗口消息(Windows Message)与窗口的内部运作有关,如创建窗口,绘制窗口,销毁窗口等。可以是一般的 阅读全文

posted @ 2012-03-20 09:36 ljl_falcon 阅读(271) 评论(0) 推荐(0)

摘要: 说到VCL中的消息处理就不能不提到TApplication,Windows会为每一个当前运行的程序建立一个消息队列,用来完成用户与程序的交互,正是通过Application完成了对Windows消息的集中处理! 首先通过Application.Run进入消息循环进行消息的处理,其中调用了HandleMessage。procedure TApplication.HandleMessage; var Msg: TMsg; begin //这里先调用ProcessMessage处理,返回值为False调用Idle,就是在空闲时,即消息队列中无消息等待处理时调用Idle if not Pro... 阅读全文

posted @ 2012-03-20 09:35 ljl_falcon 阅读(219) 评论(0) 推荐(0)

摘要: 位大虾, 这个问题在VCL中是怎样处理的呀? 例如:Tedit中有一个事件是onkeypress,应用如下: procedure tform1.edit1keypress(sender:tobject;var key:char); begin end; 那么这个事件是怎么样和WIN32中的WM-CHAR联系上的呢? VCL是怎么做的?TWinControl procedure WMChar(var Message: TWMChar); message WM_CHAR; ... procedure TWinControl.WMChar(var Message:... 阅读全文

posted @ 2012-03-20 09:34 ljl_falcon 阅读(200) 评论(0) 推荐(0)