关于用DELPHI实现关闭天网防火墙,高手请进,散分

来源:百度知道 编辑:UC知道 时间:2024/07/03 10:14:35
在一本书上看见的代码,这段代码有很多地方不够理解,代码如下
if findWindow(nil,pchar('pfw'))>0 then sendMessage(findwindow(nil,pchar('pfw')),wm_close,0,0);

问题:
1:findWindow这个函数的第一个参数为nil代表什么意思?
2:pfw应该是person firewall的缩写,pchar('pfw')这个函数能返回什么?pchar函数有什么用?
3:findWindow这个函数返回的是实型的吗?为什么要判断>0 ?
4:sendMessage中第二个参数wm_close是什么意思?后面两个为0的整型参数又是什么意思?
The Last:这本书写的不是很详细,所以请各位高手介绍些关于讲解这类函数的书,这样可以更快的学习,避免提问的繁琐过程,非常感谢!

1,nil 可以认为是缺省,也就是所有窗体的类型,查看窗体类型用到C++的spy

2,不是返回什么,而是找到窗体标题为pfw的,pchar是指向一个字符串首地址的批针,以#0结束,这里是findwindow的参数必须。

3,>0嘛,就是这个时间成立,就执行sendmessage

4,你关闭一个窗体,就是发送了 wm_close 给它,它就关闭窗口了。后面的参数为什么是0,这个你的查看sendmessage是如何用的了,百度下有,我就不啰嗦了。

你说的书不涉及到什么原理的,或者说刚开始学,你就记住这些代码,懂得替换某部分也能实现相应的功能就差不多了。
真想有黑客类型的编程还附带详细的解析的, 黑客编程2 有关C语言编程的,还不错~~非常详细。

HWND FindWindow(LPCTSTR lpClassName,LPCTSTR lpWindowName );
这是函数原型(这是C语言的)
两个参数都是字符指针型的。
第一个参数是你要找的窗口的类型名也就是classname。不过一般都不知道。所有不用,置为Nil,也就是空。是一个指向0的指针。
第二个是窗口的名字,也就是你要找的窗体的标题栏上显示的名字。
pchar的意思把括号里面的字符串转换为指向字符串首地址的指针。以适应函数参数指针型的要求。
返回:如果成功找到了返回的是一个窗口句柄,如果没找到,返回的是NULL,也就是0。
4.sendMessage是向窗口发送消息的函数,wm_close是窗口关闭消息。后面的的两个参数0,是这个消息不需要参数

这类函数都是windows API,你可以上MSDN查询其使用方法,或在网上搜索,不过你要了解一下C语言,因为大多数都是C语言版的。