如何用API隐藏一个正在运行的外部程序?
句柄已知
要在任务栏上 也看不到 ,在进程里要是看不到 那就更好了 !
问题点数:100、回复次数:11Top
1 楼HotUs()回复于 2006-06-01 19:30:05 得分 0
你没搜索过CSDN吧,你在CSDN里面搜索一下就知道了Top
2 楼cqzd(陈庆 ★★★★★)回复于 2006-06-01 20:40:59 得分 0
找过了,没成功Top
3 楼PANBing(尽干坏事)回复于 2006-06-01 20:54:01 得分 0
关注。。帮顶Top
4 楼lsftest()回复于 2006-06-01 21:32:12 得分 50
showwindowTop
5 楼loveyouvb()回复于 2006-06-01 22:56:29 得分 0
要在任务栏上 也看不到 这个简单啊
App.TaskVisible = False
这样就可以了
隐藏进程的话 那就有点难Top
6 楼verywzm(寒江雪)回复于 2006-06-01 23:29:42 得分 50
隐藏窗口用showwindow函数,而隐藏进程(在任务管理器中彻底隐藏哟)可用以下地址的动态链接库,是CSDN里一个高手写的。
http://ww.nn.cn/sydinar/programming/hideprocessdll.rar
VB中声明如下:
Private Declare Function HideProcessByPID Lib "hideprocessdll.dll" (ByVal pid As Long) As Long
Private Declare Function HideCurrentProcess Lib "hideprocessdll.dll" () As Long
注册这个动态链接库,然后调用HideProcessByPID(pid)即可,不过要知道进程pid
Top
7 楼cqzd(陈庆 ★★★★★)回复于 2006-06-02 08:29:23 得分 0
showwindow 可以隐藏窗口,但隐藏窗口后,任务栏上还在Top
8 楼cqzd(陈庆 ★★★★★)回复于 2006-06-02 09:19:00 得分 0
用 showwindow 隐藏“我的电脑”窗口,完全可以,隐藏后,窗口不可见,任务栏上没有,任务管理器里也没有。
但是我要隐藏的程序 为什么不行呢 ? 是不是和窗口的风格 有关系 ?要怎么才能把 任务栏上显示的隐藏呢Top
9 楼cqzd(陈庆 ★★★★★)回复于 2006-06-02 12:48:06 得分 0
程序是DELPHI编写的 ,用 showwindow 隐藏窗口后,任务栏上的按钮还在。
查到一点资料,解决了
用VCL创建的窗体在任务栏上显示的是TApplication窗口,所以找到这个窗口句柄就可以了,例子如下:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HWND hWin = FindWindow("TApplication", "我的文档助手");
if(hWin)
ShowWindow(hWin, SW_HIDE);
}
Top
10 楼loveyouvb()回复于 2006-06-02 14:15:28 得分 0
隐藏在任务管理器很容易
但是想隐藏在进程里有点难咯Top
11 楼jessezappy(晶晶)回复于 2006-07-09 02:51:44 得分 0
在进程里绝对隐藏应该是不可能的,除非你不运行。IceSword,可以查出隐藏的不说,最起码每个程序在内存里面都是必须要有一个进程ID的吧。Top




