Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1248262
  • 博文数量: 788
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 7005
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-19 15:52
文章存档

2017年(81)

2011年(1)

2009年(369)

2008年(337)

分类:

2009-04-08 09:22:44



可以找到toolbar的句柄,  
            在Toolbar中的按扭也没有句柄,  
                              请问如向ToolButton中ToolButton发送点击按钮?  
                                            大家请帮帮忙,谢谢!!!

什么现在还没有人回复我!!!

//测试如下代码  
  uses   CommCtrl,   Types;  
   
  procedure   TForm1.Button1Click(Sender:   TObject);  
  var  
      vHandle:   THandle;  
      vIndex:   Integer;  
      vRect:   TRect;  
   
      vProcessId:   DWORD;  
      vProcess:   THandle;  
      vPointer:   Pointer;  
      vNumberOfBytesRead:   Cardinal;  
  begin  
      vHandle   :=   ToolBar1.Handle;   //   改写为其他进程ToolBar句柄  
      vIndex   :=   0;   //   按钮序号  
   
      GetWindowThreadProcessId(vHandle,   @vProcessId);  
      vProcess   :=   OpenProcess(PROCESS_VM_OPERATION   or   PROCESS_VM_READ   or  
          PROCESS_VM_WRITE,   False,   vProcessId);  
      vPointer   :=   VirtualAllocEx(vProcess,   nil,   $1000,   MEM_RESERVE   or   MEM_COMMIT,  
          PAGE_READWRITE);  
      try  
          SendMessage(vHandle,   TB_GETITEMRECT,   vIndex,   Integer(vPointer));  
          ReadProcessMemory(vProcess,   vPointer,   @vRect,   SizeOf(TRect),  
              vNumberOfBytesRead);  
      finally  
          VirtualFreeEx(vProcess,   vPointer,   0,   MEM_RELEASE);  
          CloseHandle(vProcess);  
      end;  
      SendMessage(vHandle,   WM_LBUTTONDOWN,   MK_LBUTTON,  
          Longint(PointToSmallPoint(CenterPoint(vRect))));  
      SendMessage(vHandle,   WM_LBUTTONUP,   MK_LBUTTON,  
          Longint(PointToSmallPoint(CenterPoint(vRect))));  
  end;



--------------------------
新闻:FriendFeed 正在踏进 twitter 的领域
导航:博客园首页  知识库  新闻  招聘  社区  小组  博问  网摘  找找看
阅读(1828) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~