读书人

开机自动启用后弹出了界面几秒过后

发布时间: 2012-02-24 16:30:38 作者: rapoo

开机自动启用后,弹出了界面,几秒过后,自动关闭了?
那位童鞋遇到过这种情况?
开机自动启用,是写在服务里的;写在服务里的开机自动启用,为什么,注销电脑后,不能自动启用的?

[解决办法]
很可能是程序出问题了,可以看看系统日志能否获取一些信息
另外自测下程序。
[解决办法]
你要设置好服务状态,否则services.exe就会把你的进程结束
[解决办法]
Debug下调试一下看看运行到哪个地方函数失败返回了
[解决办法]

C/C++ code
#pragma once//#include   <winsvc.h>class CBaseService{public:    static CBaseService* m_this;    CBaseService(void);    virtual ~CBaseService(void);    CString GetSvcName(){return m_strServiceName;}    HANDLE    m_hExitEvent;protected:    CString m_strServiceName;    CString m_strDisplayName;    CString m_strDesc;    CString m_strDepend;    SC_HANDLE m_hSCManager;    SC_HANDLE m_hService;    SERVICE_STATUS m_svicStatus;    BOOL SetStatus(DWORD dwState);    BOOL InstallService();    void UninstallService();    BOOL StartService();    SERVICE_STATUS          m_svcStatus;     SERVICE_STATUS_HANDLE   m_svcStatusHandle;    HANDLE                    m_hSvcHandle;    static void WINAPI ServiceMain(DWORD dwArgc, LPTSTR* lpszArgv);    static void WINAPI Handler(DWORD dwOpcode);    BOOL Initialize();    virtual void OnStop(){}    virtual void OnPause(){}    virtual void OnContinue(){}    virtual void OnShutdown(){}    virtual void OnInitService(){};    virtual void OnRun(){};    void Run();private:    static BOOL m_bInstall;    BOOL m_bRunning;    };
[解决办法]
有可能是界面的问题,windows服务其实不允许有界面。
[解决办法]
弹出对话框后自动停了?你可以用服务控制台启动服务,如果在进度条到头前没设置状态,你的服务就启动失败了。

读书人网 >VC/MFC

热点推荐