怎样隐藏应用程序?
用CTRL+ALT+DEL看不见的那种………… 问题点数:100、回复次数:12Top
1 楼kimryo(God is on my side)回复于 2002-05-01 13:40:05 得分 11
这个问题好熟悉,用一个函数就行了...是什么来着....Top
2 楼afc(afc)回复于 2002-05-01 13:40:47 得分 11
做成一个服务程序Top
3 楼kimryo(God is on my side)回复于 2002-05-01 13:42:00 得分 0
将你的进程注册为一个服务.
RegisterServiceProcessTop
4 楼anjy(泡泡oοО○)回复于 2002-05-01 13:45:34 得分 11
//隐藏进程,使之不被Alt+Ctrl+Del撤消(做成一个系统服务程序)
void Hideproc()
{
HINSTANCE hInst = LoadLibrary("KERNEL32.DLL");
if(hInst)
{
typedef DWORD (WINAPI *MYFUNC)(DWORD,DWORD);
MYFUNC RegisterServiceProcessFun = NULL;
RegisterServiceProcessFun = (MYFUNC)GetProcAddress(hInst, "RegisterServiceProcess");
if(RegisterServiceProcessFun)
{
RegisterServiceProcessFun(GetCurrentProcessId(),1);
}
FreeLibrary(hInst);
}
}Top
5 楼oranges(浮萍)回复于 2002-05-01 13:45:45 得分 11
任务栏编程可以,在2000里用CTRL+ALT+DEL应用程序里看不见它,不过如果细心的在进程里找的话,还是可以看见的Top
6 楼quanxiongwei(毛毛熊)回复于 2002-05-01 13:46:20 得分 11
HINSTANCE hIns = LoadLibrary("kernel32.dll");
if(hIns)
{
MessageBox("ajkfd");
DWORD (WINAPI *pProc)(DWORD, DWORD);
pProc = (DWORD (WINAPI *)(DWORD, DWORD))GetProcAddress(
hIns, "RegisterServiceProcess");
if(pProc)
(*pProc)(GetCurrentProcessId(), 1);
FreeLibrary(hIns);
}
将上面代码加入你的BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)函数中。Top
7 楼quanxiongwei(毛毛熊)回复于 2002-05-01 13:47:28 得分 1
写错了,没有
MessageBox("ajkfd");Top
8 楼Yokishiro(狂狼啸月)回复于 2002-05-01 13:48:08 得分 11
这个方法只能在98下有用Top
9 楼No_love(爱情甜蜜吗)回复于 2002-05-01 13:58:04 得分 11
不行,在2000下注册为服务程序也是可以看到的,不记得怎么做的了,你看看以前的帖子,有很多人问过这样的问题Top
10 楼kindguy(哈哈儿)回复于 2002-05-01 14:18:07 得分 11
调用 SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, 0, 0); ,使(Ctrl+Alt+Del)失效.
恢复时调用 SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, 0, 0);
实验证明,绝对可以,请给分
Top
11 楼hch_d(城城)回复于 2002-05-01 15:16:09 得分 11
upTop
12 楼a_b(Goldenman)回复于 2002-05-01 15:18:58 得分 0
谢谢Top




