当前位置:首页 > 技术问答集
firefox

消息如何反截获,请winform下API高手讨论一下

 所属目录:Java   |   类型:技术问答   |   时间:2007-05-21
 问题:

朋友写了一个winspy,无法获得有的密码框的密码,估计是重写了textbox,我也写了一个textboxex:  
  public   class   textboxex:system.windows.forms.textbox  
  {  
  public   const   int   wm_gettext=0x000d;  
  public   textboxex()  
  {  
  //  
  //   todo:   在此处添加构造函数逻辑  
  //  
  }  
  protected   override   void   wndproc(ref   message   m)  
  {  
  if(m.msg==wm_gettext)return;  
  base.wndproc   (ref   m);  
  }  
  这样用sendmessage(hwnd,wm_gettext,sb.capacity,sb);//stringbuilder   sb   =   new   stringbuilder(1024);  
  无法获得文本框的text,wm_gettext被截获了  
  请问还有别的方法可以获得那个textboxex的文本吗?  
  比如发送别的消息,如何反截获呢

· 网友精彩回答:

发表者:weisunding

upup!  
  如果是.net写的应用程序,可以通过findwindow,找到那个窗体句柄,form.fromhandle()得到窗体,再用反射找到那个文本框的句柄,进尔可以直接取其.text尔!

发表者:dutguoyi

mark  
 

发表者:jamesfay

这个问题问错地方了,应该放到vc++里面更合适,一样用api不必非看c#的code

发表者:ekingxu

upup

发表者:fengyunleo

我不是高手只能帮你up

发表者:asdc001

帮你顶,顺便收藏此贴

发表者:zhujiechang

qq的就不用想了,vc也不行,它将消息处理掉了。只能做用于一般的textbox  
   
 

发表者:oyljerry

新版qq有反拦截钩子,基本上很难获得密码框内容

发表者:dqjia

mark

发表者:realwar

原来有一些黑客工具可以通过发一个消息来显示****里面的内容,但是现在不行了,微软改了相关部分,不再可以通过此方法来显示密码了.

发表者:dk385

用c#我没写过,单是用c#的话确是很难实现。不过写这类东西还是用vc++比较合适。关注楼下见解  
 

发表者:zzczh

没什么成熟的见解,只能帮你顶了!  
  看来学无止境啊!

.
© 2006-2008 All Rights Reserved