摘要: 最近在研究hook这个东西,作为一个windows菜鸟,研究这个还真花了点时间,下面分享下今天按照别人代码写出的两个鼠标钩子实例。第一个是针对线程的钩子几点需要说明的地方: (1) 如果对于同一事件(如鼠标消息)既安装了线程钩子又安装了系统钩子,那么系统会自动先调用线程钩子,然后调用系统钩子。 (2) 对同一事件消息可安装多个钩子处理过程,这些钩子处理过程形成了钩子链。当前钩子处理结束后应把钩子信息传递给下一个钩子函数。而且最近安装的钩子放在链的开始,而最早安装的钩子放在最后,也就是后加入的先获得控制权。 (3) 钩子特别是系统钩子会消耗消息处理时间,降低系统性能。只有在必要的时候... 阅读全文
posted @ 2012-08-22 12:24 嵌入式·李 阅读(2018) 评论(0) 推荐(0) 编辑
摘要: 最近在做一个项目,发现AD没有mute脚于是pop声成了大问题pop声产生的原理就是:当AD有有输出到无输出,或者从无输出到输出,都会有一个电平的跳变此跳变会产生POP声起先开始我们所用的方法是 硬件上添加延时,延时输入输出的开关,给足够的时间让MCU去作mute处理但是效果不理想后来我就想用软件处理,当arm一直有音频输出时,是不会造成声音通道的开关,就不会产生POP声原理就是 无限循环的播放无声音频信号。具体代码进下面 http://files.cnblogs.com/lishiqi/pop.rar 阅读全文
posted @ 2012-08-13 09:54 嵌入式·李 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 今天和大家分享最近用到的一个基础技能:ini文件的使用最近的项目arm没有外接eeprom,运行过程中应用程序开开关关数据的保存是个问题所以用最常见的方式ini文件。最开始我把ini文件存在nand flash中,但是后来发现使用的nand的擦写次数仅有10000次于是就把ini放置在内存文件夹中下面具体展示下代码首先是 封装好的代码不是我写的,是网上收集的,这个算是写的不错的:RdWrtIni.h 1 #ifndef __RDWRTINI_H__ 2 #define __RDWRTINI_H__ 3 4 #define DIM(a) sizeof(a)/sizeof(a[0]) 5 6... 阅读全文
posted @ 2012-08-08 15:45 嵌入式·李 阅读(662) 评论(0) 推荐(0) 编辑
摘要: 最近做的一个项目,需要不同模块之间通信,MCU-(OS驱动)-DLL-EXE,由于需要arm将触摸驱动和音频设备开关信息发送给MCU处理我在touch驱动和wavmain中加入了postmessagemessage发给应用层,应用再通过串口发给MCU处理下面看看具体的代码 1 BOOL getTouchCoordinate(USHORT *x, USHORT *y) 2 { 3 ULONG trytimes = 0; 4 5 *x = *y = MAX_ADC_VAL; 6 7 RETAILMSG(0, (TEXT("++++sampleADC!\r\n")));... 阅读全文
posted @ 2012-08-08 15:22 嵌入式·李 阅读(433) 评论(0) 推荐(0) 编辑