如何禁止程序在任务栏中显示。(200分)

  • 主题发起人 主题发起人 hookyboy
  • 开始时间 开始时间
H

hookyboy

Unregistered / Unconfirmed
GUEST, unregistred user!
如何禁止将程序做为任务添加在任务栏中,谢谢各位大虾指教。
 
有好多以前的贴子。你搜索一下就可以了。
 
如果是Win9x,则在主程序的implementation前面加上一句: <br>function RegisterServiceProcess(dwPID:DWord;dwType:DWord):boolean; <br>StdCall;External 'Kernel32.DLL'; <br>然后可以在Form1.Create和Form1.Close里面分别用下面两句来注册服务或取消: <br>RegisterServiceProcess(0,1);{隐藏} <br>RegisterServiceProcess(0,0);{解除} <br><br>给分吧。。呵呵。<br><br>
 
hehe, mdc 没有看清楚题意吧:)<br>这样:<br>&nbsp; ShowWindow(Application.Handle, SW_HIDE);<br>恢复:<br>&nbsp; ShowWindow(Application.Handle, SW_SHOW);
 
ShowWindow(Application.Handle, SW_HIDE);<br>是最简单的做法,同样,也可以在FORM &nbsp;CREATE事件里用<br>SetWindowLong函数。具体你查帮助就明白了。<br>
 
setwindowlong(application.handle,gwl_exstyle,getwindowlong(application.handle,<br>gwl_exstyle)or ws_ex_toolwindow)
 
看看这个<br>procedure TForm1.FormCreate(Sender: TObject);<br>begin<br>&nbsp; ShowWindow(application.Handle,SW_HIDE);<br>&nbsp; SetWindowLong(application.Handle,GWL_EXSTYLE,GetWindowLong(application.Handle,GWL_EXSTYLE) or<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);<br>&nbsp; ShowWindow(Application.Handle,SW_SHOW);<br>end;
 
win2000或win xp如何解决
 
ShowWindow(Application.Handle, SW_HIDE);和 ShowWindow(Application.Handle, SW_SHOW);<br>这个函数只能在按钮等的对象中使用,却不能在程序初始时使用,如在程序<br>的TForm1.Create下加进这句的话,是不起作用的,但是如果用<br>setwindowlong(application.handle,gwl_exstyle,getwindowlong(application.handle,<br>gwl_exstyle)or ws_ex_toolwindow)来处理的话却可以办到,因而这是一个好方法。至于最前面的老兄<br>说的方法是对任务管理器中的进程的隐藏和显示,不合题意,但对大家还是有用的,可以看看<br><br>
 
SetWindowLong 就行。
 
后退
顶部