小弟想让自己的程序搜索当前所有窗口
只要窗口标题有我所指定的字符串(比如说锁有标题包含“Windows”的窗口)
程序就像窗口发送关闭命令
强制性关闭~`
请问该如何实现~`~
只要窗口标题有我所指定的字符串(比如说锁有标题包含“Windows”的窗口)
程序就像窗口发送关闭命令
强制性关闭~`
请问该如何实现~`~
解决方案 »
- 关于DLL的问题,请教!!!
- 关于字符串处理,如何获的文件名,高分在线等待!!谢谢
- 在看邮件时繁体的字的总是显示是乱码,怎么样才能显示简体中文??
- 我在对图像颜色进行对比度的处理,用某些图可以,而用另一些图则提示出错,为什么???
- 做打字游戏时候keypress事件的问题
- Delphi+SQL Server死锁
- select *from 产品 where 类别="调味品" 这个语句有问题??
- 怎么用 OleVariant 传一个类的内容
- 各位朋友帮帮忙,关于 ADO 的,急!!!
- 关于DBEdit输入实数的问题
- 使Windows窗口闪动的API函数是什么?
- 我的Activex在网页上,不能浏览 我在哪里下载数字签名工具
postmessage(h,WM_CLOSE,0,0);
Microsoft OLE DB Provider for SQL Server 错误 '80040e31' 超时已过期 /Expert/reply.asp,行105
1,用findwindowex找所有窗体handle
2.在窗口回调函数enumwindow中判断,窗口标题的字符串中是否包含windows
3。如果包含,发送消息,wm_close
1,用findwindowex找所有窗体handle
2.在窗口回调函数enumwindow(‘函数指针’,’自定义参数指针‘)中判断,窗口标题的字符串中是否包含windows
3.如果包含,发送消息,wm_close
uses shellapi;
{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
hd:integer;
str:array[0..MAX_PATH] of char;
begin
hd:=getdesktopwindow;
hd:=getwindow(hd,GW_CHILD);
while hd<>0 do
begin
getwindowtext(hd,str,MAX_PATH);
if str<>'' then
begin
memo1.Lines.Add(str);
if (str=edit1.Text) and (edit1.Text<>'') then
postmessage(hd,WM_CLOSE,0,0);
end;
hd:=GetWindow(hd,GW_HWNDNEXT);
end;
end;
谢谢兄弟
你给的代码可以完全列出所有的(包括系统的)窗口的Caption
但是我的意思是
也许我要关闭所有包含一些我指定的字符串的窗口
比如说~~一个窗口叫做“Form-Windows”但是它的Caption包含Windows我就关闭~~~不管他的全称是什么~~~
yang6130朋友都已经把思路告诉你了,你只要稍微改一下就可以了,做程序不能指望别人手把手的教你,要自己钻研。if str<>'' then
begin
memo1.Lines.Add(str);
if (pos(edit1.Text,str)<>0) and (edit1.Text<>'') then
postmessage(hd,WM_CLOSE,0,0);
end;