rt

解决方案 »

  1.   

    有的service在没有用户登陆的时候都会启动(就是你开机登录界面出面之前那些自动启动的服务就启动了),同样你logoff了那些服务一样是运行着呢
      

  2.   

    一般都是不会的。
    除非你的SRV侦测到 没有用户在线了 自动stop.... 不过这种很少
      

  3.   

    怎么我自己写的service,登出后再登入,状态就由start变为空了。
    ?????????????????????????????
      

  4.   

    你是否在程序中响应了WM_QUERYENDSESSION消息?
      

  5.   

    我是这样的。
    ServiceMain()
    {
     ...
     hProcess = CreateProcess(...);
     WaitForSingleObject(hProcess, INFINITE);
     ...
    }
    logoff后,新建的进程就被kill掉了。
      

  6.   

    你的service没有正确注册,只是以普通exe的方式运行的。所以会和调用程序一起结束。
            // Register as Local Server
            if (lstrcmpi(lpszToken, _T("RegServer"))==0)
                return _Module.RegisterServer(TRUE, FALSE);
            
            // Register as Service
            if (lstrcmpi(lpszToken, _T("Service"))==0)
                return _Module.RegisterServer(TRUE, TRUE);
    在入口的_tWinMain函数中加入以上代码,然后注册。检查系统服务中是否有你的服务
      

  7.   

    回复人: turnmissile(会翻跟头的导弹) ( ) 信誉:99  2004-08-13 10:42:00  得分: 0  
     
     
       你的service没有正确注册,只是以普通exe的方式运行的。所以会和调用程序一起结束。
            // Register as Local Server
            if (lstrcmpi(lpszToken, _T("RegServer"))==0)
                return _Module.RegisterServer(TRUE, FALSE);
            
            // Register as Service
            if (lstrcmpi(lpszToken, _T("Service"))==0)
                return _Module.RegisterServer(TRUE, TRUE);
    在入口的_tWinMain函数中加入以上代码,然后注册。检查系统服务中是否有你的服务
    =============================================================================
      
     
    是在正确注册的情况下。