已知某个程序的句柄及这个程序中打开的某一个窗口的句柄,如何得到这个窗口的名称?(200分)

  • 主题发起人 主题发起人 别针
  • 开始时间 开始时间

别针

Unregistered / Unconfirmed
GUEST, unregistred user!
比如有一个程序名称为MyExe,其中有一个窗口名称为“About”,还有其它几个窗口(在程序编写的时候定义的),此程序运行后,我编写的另一个程序通过Windows的消息处理机制得到了MyExe程序的句柄和MyExe程序中当前打开的窗口的句柄,如何根据此窗口的句柄判断这个窗口是不是“About”窗口?或是如何根据此窗口的句柄得到该窗口名称?
 
我周日回去查一下发断信给你
 
1<br>var<br> &nbsp; &nbsp;aStr:String;<br><br>GetWindowText(Handle,@aStr[1],255);<br>2<br>var<br> &nbsp;buffertext: Array[0..255] of Char<br> &nbsp;SendMessage(Handle,WM_GETTEXT, Integer(@buffertext[0]),255);
 
请注意,我是想得到该窗体的名称(Name或ID),而不是其标题(Caption)。比如说该窗体名称为“About”,标题为“关于本系统”,用GetWindowText之类的函数得到的应该是“关于本系统”吧?
 
让About窗口能处理一个特殊的自定义消息,如果有消息来,就回答一下.参数是发送和接收方的句柄,标记什么的.<br><br>你编写的另一个程序通过发送这个特殊的自定义消息来是否有相应来确定目标窗口是否是about,如果about是你写的,那么有数十种方法可以判断,如果不是,那就悬了.
 
to: shangshang <br>About窗口当然不是我自己写的,是另一个应用程序,没有源代码,呵呵.
 
后退
顶部