2011年12月26日

摘要: 一、条件注释简介IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法。条件注释只能用于IE5以上。如果你安装了多个IE,条件注释将会以最高版本的IE为标准。条件注释的基本结构和HTML的注释(<!– –>)是一样的。因此IE以外的浏览器将会把它们看作是普通的注释而完全忽略它们。IE将会根据if条件来判断是否如解析普通的页面内容一样解析条件注释里的内容。二、条件注释属性gt : greater than,选择条件版本以上版本,不包含条件版本lt : less than,选择条件版本以下版本,不包含条件版 阅读全文
posted @ 2011-12-26 17:32 Supper 阅读(6563) 评论(0) 推荐(0) 编辑
摘要: 最近写了一个个人主页,先p好的图,使用了渐变透明和边缘透明,想了一想,使用GIF图片吧,可是PS生成的图片边缘效果很差劲,于是想到了png图片,可是png IE6的透明支持很差劲,想到了使用CSS滤镜,效果是出来了,可是超链接却无法点击。CSS滤镜代码:background-image: url(images/header.png) !important;background-repeat: no-repeat;_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/header.png') 阅读全文
posted @ 2011-12-26 17:29 Supper 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 观察模式在HOOK很多应用中,有一类应用最为常用,那就是观察模式。对于信息获取的要求,在很多时候都是非常的重要的功能。在很多时候,我们都需要根据一定量的信息去判断如何决策。正如打仗一样,没有一定量的有意义的数据,就是摸黑,只能死路一条。像Windows提供的SetWindowHook就是典型地为这类应用准备的。而且这也是最普遍的用法。这个模式的特点是,在事情发生的时候,发出一个通知信息。观察者只可以查看过程中的信息,根据自己关心的内容处理自己的业务,但是不可以更改原来的流程。如全局钩子中,经常使用的鼠标消息、键盘消息的监视等应用。金山词霸屏幕取词的功能是一个典型的应用(具体技术可以参考此类文章 阅读全文
posted @ 2011-12-26 17:06 Supper 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 非常遗憾,HOOK的发展史不是那么清晰可见。事实上,HOOK到底是什么,很多人的说法都不一样。最早是在操作系统中出现的HOOK概念。在Unix/Linux/Windows中都有类似概念。当时提出的目的在于,允许用户在系统调用过程中,插入自己的代码处理特殊事情。典型的HOOK就是用自己的功能替换原有的函数点,在处理完成之后,又恢复原有的函数点。(这里“点”就是表示一个可以使用HOOK勾住的位置)。下面是《关于钩子》中,描述的Windows是中的钩子:在Windows中,钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可 阅读全文
posted @ 2011-12-26 17:03 Supper 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 我一直在避免写HOOK的技术实现,想尽可能地将一些看不到的东西收集起来。相对于了解一个成熟的技术,还不如去了解其中的思想吧。我是这样认为的。这一章会暂时远离HOOK本身,我们会尝试着去思考这些技术出现的根源。很多人象我一样,从OP的衰败中走向OO的繁荣。软件的复杂度也是突飞猛进。当年“没有银弹”的断言,非常准确地说明了软件的发展趋势,当新技术发展的时候,软件的复杂度也随之发展。我们现在的软件,已经不再是OP时代的软件了。大家需要的不再是一段会计算的代码。大家需要图形界面,大家需要管理流程,大家需要信息共享!假设我们以前那些单一功能的软件都可以比喻成一条路的话。它非常简单,你只要考虑从A如何走到 阅读全文
posted @ 2011-12-26 16:59 Supper 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 在很多人眼里,Hook都是高级程序员才会使用的技术。一年前,我也是。每每看到别人使用了Hook技术就很嫉妒。是的,说嫉妒一点都不夸张。刚开始,不知道Hook到底是什么技术。或者说,Hook到底是做什么的。Hook的英文是钩子,但是,说实话,我的中文意识中,怎么也不能将钩子和Hook划等同符号。一个钩子,它在等待我们去往上面挂上我们想要的东西。这点,从最终结果看。确实和这个技术很符合。可问题是,那些钩子在什么地方?我们家门口倒是有几个挂衣服的钩子,可是我要挂其他物件的钩子在哪里呢?最常听说的就是API HOOK了。有句话说得很有道理,HOOK API是一个永恒的话题。网络上,不知有多少人在追捧这 阅读全文
posted @ 2011-12-26 16:55 Supper 阅读(396) 评论(0) 推荐(0) 编辑

2011年11月22日

摘要: 先看效果图吧。 最近做Web,发现网页三剑客总是会留下一些“最近打开项目”这样的痕迹在软件的界面上,心里总是觉得很不舒服,于是萌发了写一个清除器的念头。说动手就动手吧! DW、FW、Fl 的这些痕迹都是存在于注册表中的,简单原理就是删除注册表里的值就ok了,这些应该没有什么好说的,所以我就不说了。今天我们主要来讲一下无标题栏的窗体拖动问题和使用图片来简单的美化界面的问题。 可能有很多人都认为无标题栏窗体的移动是非常简单的,网上很多的朋友也给出了一些方法,大多说人给出的方法是在窗体的privite部分创建一个私有过程 procedure WMNCHitTest(var Msg: TWMNCHi. 阅读全文
posted @ 2011-11-22 12:26 Supper 阅读(2952) 评论(0) 推荐(3) 编辑

2011年8月22日

摘要: 创建一个mySQL的触发器需要使用CREATE TRIGGER命令,不过要在mySQL创建触发器,你必须保证你的mySQL的版本是5.0之后版本。create trigger的语法如下:CREATE TRIGGER trigger_name trigger_time trigger_event ON table_name FOREACH ROW trigger_stint(1)trigger_time触发时机,可以是BEFORE或者AFTER,用来指定触发器是在激活它的语句之前或者之后触发;(2)trigger_event激活触发器的语句类型,可以是INSERT、UPDATE或DELETE;. 阅读全文
posted @ 2011-08-22 19:25 Supper 阅读(1725) 评论(0) 推荐(0) 编辑
摘要: 今天闲着没事整理了一下mySQL命令行下的使用,可能有些说的不正确,还请高人不惜指教!谢谢!mySQL常用命令: 因为mySQL没有提供图形界面来管理mySQL,所以我们只能通过启动“MySQL 5.5 Command Line Client”来对其进行管理,所以下面我列举一些常用的mySQL命令:1。更改密码:SET PASSWORD FOR root@localhost = PASSWORD("新明码");这一句命令可以修改超级管理员root的密码;修改密码也可使用下面的语句:GRANT USAGE ON *.* TO root@localhost IDENTIFIED 阅读全文
posted @ 2011-08-22 18:23 Supper 阅读(1150) 评论(1) 推荐(0) 编辑

2011年8月17日

摘要: 1。数据库中随机抽取记录: try if AQry1.Active then AQry1.Close; AQry1.Open; //AQry.First; Randomize; AQry1.MoveBy(Random(AQry1.RecordCount - 1)); finally Str2 := AQry1.FieldByName('title').AsString; Str1 := AQry1.FieldByName('content').AsString; AQry1.Close; end;2。执行JS脚本的函数:function ExecJS(WebBr 阅读全文
posted @ 2011-08-17 16:04 Supper 阅读(651) 评论(0) 推荐(0) 编辑

导航