问一个很小白的问题

flyrack 2010-08-23 02:19:04
我创建一个服务程序,可是程序会出现在任务管理器的进程里面,有办法隐藏起来嘛?

代码就是ccrun上的原始码
void WINAPI ServiceMain(DWORD dwArgc,LPTSTR *lpszArgv)
{
ssh=RegisterServiceCtrlHandler("W.Z.SERVICE",Handler);
unsigned long type=SERVICE_WIN32_OWN_PROCESS|SERVICE_INTERACTIVE_PROCESS;
ss.dwServiceType=type;
ss.dwCurrentState=SERVICE_START_PENDING;
ss.dwControlsAccepted=SERVICE_ACCEPT_STOP;//表明Service目前能接受的命令是停止命令。
ss.dwCheckPoint=0;
ss.dwWaitHint=0;
SetServiceStatus(ssh, &ss);
ss.dwServiceType=type;
ss.dwCurrentState=SERVICE_RUNNING;
ss.dwControlsAccepted=SERVICE_ACCEPT_STOP;
ss.dwWin32ExitCode=NO_ERROR;
ss.dwCheckPoint=0;
ss.dwWaitHint=0;
SetServiceStatus(ssh,&ss);
}

int main(int argc, char* argv[])
{
SERVICE_TABLE_ENTRY ste[2];
//一个Service进程可以有多个线程,这是每个线程的入口表
ste[0].lpServiceName="W.Z.SERVICE"; //线程名字
ste[0].lpServiceProc=ServiceMain;
//线程入口地址
ste[1].lpServiceName=NULL;
//最后一个必须为NULL
ste[1].lpServiceProc=NULL;
StartServiceCtrlDispatcher(ste);
return 0;
}
...全文
86 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyrack 2010-08-25
  • 打赏
  • 举报
回复
哦 看样子没办法了哎
zzbinfo 2010-08-24
  • 打赏
  • 举报
回复
服务程序--也是程序呀,当然会在任务管理器中有这个进程了呀。在win9x系统里面可以通过提高进程级别,实现隐藏,但是xp下面实现不了
AFreshGirl 2010-08-24
  • 打赏
  • 举报
回复
帮你顶一下吧,既然是妖哥的代码,就坐等妖哥来吧。我这种菜鸟是不懂的
flyrack 2010-08-24
  • 打赏
  • 举报
回复
怎么没有人呢?

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧