某一本旧书上出现过,但他编了那么多年的程序,从未真正调用过。
孙轶民从床底拖出行李箱,拿出从老家带回来的几本计算机书籍开始翻阅,最终在那本老古董的书籍《Windows程序设计》中找到了这个函数。
这本书的名称看起来极其普通,却是他的珍藏。只因这本书在市面上已经无迹可寻。尽管类似名字的计算机书籍书在市场上俯拾皆是,却唯独只有这一本,因作者讲解思路的细致独到而被孙轶民认可。并且书本内容涉及到了很多比较冷门的知识,是其他很多类似书籍上无法见到的。其中就包括今天他要找的这个“钩子函数”。
他温习了一遍:这个函数的作用其实是为了截获指定一个线程的输入消息,比如键盘鼠标消息,截获之后,程序员可以分析该消息中包含的内容,比如按键消息中包含的键盘上哪一个键被按下的信息。分析完毕你还可以任意处理它:你可以把消息原样返还给原有线程,或者把消息做修改后返还,甚至你也可以拦截该消息——不予返还。【请到①⑦К阅读㊣版】
这令孙轶民疑惑:微软为何要安排这样一个API函数供开发者调用?这似乎完全没有必要,而且引起了一定的安全风险。
做了这么多年的程序员,他还是第一次在构思过程中运用到了这个函数。
作者在举例说明这个函数如何使用的时候,顺便提到了另一个发送虚拟窗口消息的API函数SENDMESSAGE(),这引起了他的一点兴趣。而这个函数,他在多年的编程生涯中,同样一次都没有用过。
看着书上的函数原型与简介,孙轶民脑海突然闪过一丝灵感
第59章:程序员的灵感(6/8)