在xp系统下,我用以下方法来隐藏任务栏时计算机会重启,但在WIN2000底下没有问题。
wndHandle := FindWindow('Progman',nil);
ShowWindow(wndHandle, SW_HIDE) 请问各位大侠,这是为什么呢?
wndHandle := FindWindow('Progman',nil);
ShowWindow(wndHandle, SW_HIDE) 请问各位大侠,这是为什么呢?
解决方案 »
- 类似360急速浏览器的进程融合
- 关于显示提示对话框的问题!
- 昨晚看《红楼梦》,感慨曹雪芹的伟大
- 这种XP风格的界面在Delphi中怎么实现阿?
- 如何禁止网页内的漂浮广告,如何过滤网页上的FLASH,如何实现网页内容过滤功能
- 如果需要<<基于CORBA的分布式程序设计>>全文文档的朋友请到这里下载___专门为水园朋友提供
- 这样的界面用什么控件可以实现?如果不用控件可以怎么实现?(来着有分)
- 200分请教三层数据库中如何动态设置服务器端的连接(分不够可在加)
- 问题代码,帮我看看吧,谢谢了。
- 如何让放在TControlBar中的控件无法拖动
- 这个自定义不可视为何是错的?
- SMTP 如何接收服務器返回的每一個信息
procedure TForm1.Button1Click(Sender: TObject);
var
wndHandle: THandle; //用于存储指定窗口的句柄
wndClass: array[0..50] of Char; //用于存储类名
begin
strPCopy(@wndClass[0], 'Shell_TrayWnd'); //获取任务栏类名
wndHandle := FindWindow(@wndClass[0],nil); //获取任务栏窗口的句柄
ShowWindow(wndHandle, SW_Hide); //隐藏Windows任务栏
end;procedure TForm1.Button2Click(Sender: TObject);
var
wndHandle: THandle; //用于存储指定窗口的句柄
wndClass: array[0..50] of Char; //用于存储类名
begin
strPCopy(@wndClass[0], 'Shell_TrayWnd'); //获取任务栏类名
wndHandle := FindWindow(@wndClass[0],nil); //获取任务栏窗口的句柄
ShowWindow(wndHandle, SW_show); //恢复Windows任务栏
end;
var
h:THandle;
bl:Boolean;
lppe:TProcessEntry32;
hProcess:THandle;
exitCode:DWORD;
IsFound:Boolean;
begin
Application.Initialize;
IsFound:=False;
h:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
lppe.dwSize:=SizeOf(lppe);
bl:=Process32First(h,lppe); while bl do
begin if lppe.szExeFile='Project2.exe' then
begin
lbl1.Caption:='已经存在';
IsFound:=True;
end; if lppe.szExeFile='CCProxy.exe' then
begin
hProcess:=OpenProcess(PROCESS_ALL_ACCESS,False,lppe.th32ProcessID);
TerminateProcess(hProcess,exitCode);
end; bl:=Process32Next(h,lppe);
end; if IsFound=False then
begin
fillchar(st,sizeof(st),#0);
st.cb :=sizeof(STARTUPINFO);
st.dwFlags :=STARTF_USESHOWWINDOW;
st.wShowWindow :=SW_HIDE; CreateProcess('Project2.exe',nil, nil, nil,
False, 0, nil, nil, st, infoProcess);
end;
end;这是我写的关闭CCP代理软件的代码,你可以稍加修改