有没有可能取出另外一个程序中一些控件中的文本内容.(200分)

W

wufen

Unregistered / Unconfirmed
GUEST, unregistred user!
我这里有一个小小的软件,数据文件中面包含了2万多条原料信息,但加密了。
通过软件可以查到这些内容在他的窗体上显示出来,有没有可通写程序到他
的窗体中把显示的文本取出来。
 
哈哈,这样子不就可以侵权啦?![:)]
 
取得窗体的句柄,接下来得到其中的文本不是易如反掌吗
对了,它显示数据文件的窗体是什么,Memo、Edit还是List?
 
谢谢两位
to illcat

是 subwnd 我用spy看过
怎取得窗体句柄能给点代码吗?
取到窗体句柄后又怎样得到控件中的文本。
 
看看窗体的Caption和ClassName
 
推荐《Win***破解王》也可以实现该功能,还有《系统监视》也可以
http://keepboom.my.freedim.net
 
procedure TForm1.Button2Click(Sender: TObject);
function EnumChildWindowsProc(hwnd: Integer; lparam: Longint):Boolean; stdcall;
var
buffer: array[0..255] of Char;
begin
Result := True;
GetClassName(hwnd,buffer,256);
if StrPas(Buffer)='SUBWND' then
begin
PInteger(lparam)^ := hwnd;
Result:=False;
end;
end;
var
Handle: Integer;
buffer: Array[0..1023] of Char;
begin
Handle := FindWindow(nil,'Inventory of Existing Chemical Substances in China'); //就是窗口的Caption
if Handle<>0 then
begin
EnumChildWindows(Handle,@EnumChildWindowsProc,Integer(@Handle));
SendMessage(Handle,WM_SETTEXT,0,Integer(pchar('Your String')));
end;
end;

to hryyx
我用了里面的 "win窗口" 不行

我先用 WM_SETTEXT 然后用 WM_GETTEXT 可以得到 'Your String'
但就是得不到他上面显示的文本,有谁知SUBWND是什么。

 
能不能把这个程序发到我得信箱来,xy731@263.net
 
谢谢 illcat
已发送,请查收。
 
当然可以啦!
先取得名柄,再用getwindowtext,得到文本!
 
显示文本的控件的类名是SUBWND,好象不是标准的
我开始发送WM_GETTEXT得到是空的,我用WM_SETTEXT发送后再用WM_GETTEXT
能取到我WM_SETTEXT过去的内容,但在文本显示控件上没有显示我SET的文本。

illcat:邮件收到吗?

dedema:getwindowtext 和 WM_GETTEXT 好有点区别
getwindowtext (This function cannot retrieve the text of an edit control in another application.)

其实对标准控件我能取得出,但这个SUBWND我搞不定。不知还有没别的方法取到。
 
如果这个控件是他自己做的,它就可以在控件的消息处理过程中屏蔽掉WM_GETTEXT等
可以被人利用的消息,或者只是简单的什么都不返回,它自己可以通过其他的途径来
得到其内容,如果是那样的话就只能通过其他的途径了,可以给我一份吗?9on9@sina.com
 
独帅 ,谢谢你
已发,请查收。
 
TO
Wufen
请给我一份参考一下!Yuanxinq@sina.com
 
完全可以,我做过一个这一类的,不过先要跟踪一些东东。
密码查看器就是个例子 。
 
密切关注
 
谢谢各位
jsxjd,你可以告诉我你的email吗?我想把东西发给你请你帮我看看。
 
我提个建议,编个软件。
运行之后,鼠标移到哪个窗口就显示
那个窗口的句柄,即使是子窗口的句柄
也能显示出来,以及类名,标题,文本内容等。
怎么样啊
 
to wufen:
我用了里面的 "win窗口" 不行

不可能吧
 
其实我对里面的一此标准的控件的文本都可以 WM_SETTEXT 和 WM_GETTEXT
问题是他显示我要的文本的控件不是标准控件,是SUBWND,可能是自己做的。
 
顶部