|
制作QQ消息炸弹(5) begin edit1.Text:=combobox1.Text; edit1.SelectAll; edit1.CopyToClipboard; sendmessage(hmemo1,WM_PASTE,0,0); sendmessage(hbutton,BM_CLICK,0,0); end; end; 附上简要说明:由于本人所知有限,不太会用剪切板函数对将已知字串拷贝到剪切板的方法还不知道。所以只能借道于控件上。因为所有文本类控件都有一个方法即——edit1.CopyToClipboard,所以只能先将Edit1变为不可见控件。每次先将要发送的内容传给Edit1,而后在将Edit1的内容CopyToClipboard。哈!这只是一个取巧的法子,大家要是知道有什么更好的方法还望告知在下,呵! 后记: 以上代码是针对QQ2003版本。虽然网上有如:飘叶千夫指的好工具。不过作为一个小小菜鸟。但又喜欢编程的人来说。自己DIY(do it youtself)一个也是很爽的一件事吧!我自己也参照飘叶千夫指做了一个,感觉具备了它的使用功能吧!还不错。其实也没有太多技术性的东西,只是运用了几个API函数而已。只希望对刚刚学Delphi的朋友有所帮助,当然高手是用不着的了。 注明:QQ2004有些改动.为了方便我把新改的代码帖上来: procedure TForm1.Timer1Timer(Sender: TObject); var hbutton,hbutton1,hmemo,hmemo1,hparent1:HWND; begin repeat hparent:=findwindowex(0,hparent,'#32770',nil); //QQ2004就是多了下面这句,Memo上又多了一层窗口 hparent1:=findwindowex(hparent,0,'#32770',nil); until hparent1<>0; hbutton:=findwindowEX(hparent1,0,nil,'发送(&S)'); hbutton1:=findwindowex(hparent1,0,nil,'聊天模式(&T)'); if hbutton1<>0 then sendmessage(hbutton1,BM_CLICK,0,0); hmemo1:=GetDlgItem(hparent1,$00000000); hmemo:=getwindow(hmemo1,GW_CHILD);
|