请问如何使已经运行的程序,在任务栏上不可见?(50分)

  • 主题发起人 主题发起人 2days
  • 开始时间 开始时间
2

2days

Unregistered / Unconfirmed
GUEST, unregistred user!
又怎样使它恢复呢????
 
procedure TForm1.FormCreate(Sender: TObject);<br>var<br>&nbsp;hr:Thandle;<br>begin<br>&nbsp; //使应用程序不出现在Windows 的任务栏上<br>&nbsp;// setwindowlong(application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);<br>end<br>恢复:<br>&nbsp;XWndLong:=GetWindowLong(Application.Handle,GWL_EXSTYLE);<br>XWndLong:=XWndLong and not WS_EX_TOOLWINDOW;<br>SetWindowLong(Application.Handle, GWL_EXSTYLE, XWndLong);
 
哦,我的意思不是说自己的程序,是要其它已经运行了的程序。。。。<br><br>比如,已经运行了一个“计算器”,要使它在状态栏上不可见,有什么办法吗?
 
取得正在运行程序的handle看看这样操作行不行
 
如果取得了计算器的handle,<br><br>是不是也要用setwindowlong.使之在任务栏上不可见?<br><br>该怎么用?[:(][:(]<br>
 
ShowWindow(Application.Handle,SW_HIDE);<br>轻松搞定,<br>ShowWindow(FindWindow('Shell_TrayWnd',nil),SW_HIDE);<br>把任务栏也隐藏掉了,OK,
 
接受答案了.
 
后退
顶部