RegisterServiceProcess

来源:互联网 发布:戴眼镜的网络歌手 编辑:程序博客网 时间:2024/05/19 13:43

函数功能描述:RegisterServiceProcess函数注册或者取消一个进程为服务。当用户注销之后,服务进程仍可运行。

函数原型:
DWORD RegisterServiceProcess(
  DWORD dwProcessId,  
  DWORD dwType        
);

参数:
dwProcessId
   指定注册为服务的进程标识(Id),当前进程可以用NULL。
dwType
   指明是注册服务还是取消服务,可以是下面的值之一。
   值   意义
   0    取消服务
   1    注册进程为服务

返回值:
   如果函数调用成功,返回值为1,任何错误都将返回0。

注释:
   为了调用RegisterServiceProcess,应该用函数GetProcAddress从KERNEL32.DLL中得到它的函数指针,然后用函数指针调用 RegisterServiceProcess。

示例代码:

   调用KERNEL32.DLL中的RegisterServiceProcess(仅在Windows98中适用)
   
   HMODULE hModule=GetModuleHandle("kernel32.dll");
   if (hModule)
   {
          typedef DWORD (CALLBACK *LPFNREGISTER)(DWORD,DWORD);
          LPFNREGISTER lpfnRegister;
          lpfnRegister=(LPFNREGISTER)GetProcAddress(hModule,

                       "RegisterServiceProcess");
          if (lpfnRegister)
         {
                  (*lpfnRegister)(NULL,1L);   
         }
   }   
根据MSDN:Wednesday, March 29, 2000

注:只适合于Windows9X系统