win98如何隐藏进程(在不注册为系统服务进程的前提下,即不加载kerern32.dll)?
能否控制DEL+ALT+CTRL,再自己列进程,杀进程,代替系统的处理,这样就能实现隐藏

解决方案 »

  1.   

    VB有一个属性 App.TaskVisible =false 就不会列在Ctrl+Alt+Del里边VC就不知道了,帮你UP
      

  2.   

    这是我曾用过的代码,希望对你有所帮助:
    首先在程序头部添加对函数指针的定义:
    typedef DWORD (CALLBACK* LPREGISTERSERVICEPROCESS)(DWORD, DWORD);
    然后在处理相应事件中添加以下代码:
    HMODULE hDll = LoadLibrary("Kernel32");
    LPREGISTERSERVICEPROCESS lpRegisterServiceProcess = (LPREGISTERSERVICEPROCESS)GetProcAddress(hDll, "RegisterServiceProcess");
    lpRegisterServiceProcess(GetCurrentProcessId(), 1);
    FreeLibrary(hDll);
    至于你所说的不进行注册,我觉得没有太好的办法。是不是要时刻监视那个ListBox,并将相应的Item删除?不过那样倒不如直接注册为服务方便。
      

  3.   

    我的程序是加在注册表的runsevicer(win98)里,系统在启动时加运行我的程序,我的程序里就有LOADLIBRARY("KERNEL32"),但我觉得加载"kernel32"会引起启动过程变慢(测试很多次后的结果),故想用其它方法代替隐藏程序.