关于windows服务的问题,刚接触属于小白一类,关于启动服务的问题向大家请教! 服务 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 命令行,进入你服务所在的目录,然后 XXX.exe -install StartServiceCtrlDispatcher这个返回错误 就是关于Serives内部处理流程是怎样的?有相关文档或者帖子么?比如说,建立服务之后,在服务管理器中,开启服务时,会处理哪些代码? 启动服务可以写个批处理。sc create 服务名 binPath= "C:\FtpServer\XXXX.exe" 注意binPath=后面有个空格 这个只是安装吧,不是启动服务吧不好意思,看错了,启动服务我都是通过控制面板手动搞的哈,比较低端,你能帮我的,如果是通过控制面板来启动服务的话,会执行代码中StartServiceCtrlDispatcher吗? 这个只是安装吧,不是启动服务吧不好意思,看错了,启动服务我都是通过控制面板手动搞的哈,比较低端,你能帮我的,如果是通过控制面板来启动服务的话,会执行代码中StartServiceCtrlDispatcher吗?会执行StartServiceCtrlDispatcher()的吧。我调试的时候只能先有进程了才能附加,所以要看的话只能打log了。比如在你的exe主函数里应该有SERVICE_TABLE_ENTRY ServiceTable[] = { {SERVICENAME,(LPSERVICE_MAIN_FUNCTION)ServiceMain}, {NULL,NULL} };StartServiceCtrlDispatcher(ServiceTable);这样的话,你从控制面板启动服务的时候会执行ServiceMain(). 刚接触,有很多不懂,我就多问几句了在很多例子中,都是在Main()函数里面有判断if (stricmp(lpCmdLine, "/install") == 0) { Install(); } else if (stricmp(lpCmdLine, "/uninstall") == 0) { Uninstall(); } else { if (!::StartServiceCtrlDispatcher(st)) { LogEvent(_T("Register Service Main Function Error!")); } }这样,在启动服务的时候,会再次进入Main函数么? 刚接触,有很多不懂,我就多问几句了在很多例子中,都是在Main()函数里面有判断if (stricmp(lpCmdLine, "/install") == 0) { Install(); } else if (stricmp(lpCmdLine, "/uninstall") == 0) { Uninstall(); } else { if (!::StartServiceCtrlDispatcher(st)) { LogEvent(_T("Register Service Main Function Error!")); } }这样,在启动服务的时候,会再次进入Main函数么?这个我还真不知道,不过你可以打log看看。即便你程序启动不了,但是如果是要进main函数的话,总不可能是第一句出错,所以你在第一句打log看看会不会走。然后从控制面板服务管理器里去启动,看你的log是不是每次都打。 哦,现在有点朦朦胧胧的了解了对了,我只有在shell里面通过CServicesText.exe -start这样才有log,通过服务管理器去启动,怎么打log啊 哦,现在有点朦朦胧胧的了解了对了,我只有在shell里面通过CServicesText.exe -start这样才有log,通过服务管理器去启动,怎么打log啊你就在main函数第一行打log啊,然后通过服务管理器不停的去启动,停止,启动,停止,看log有没。对了,我指的是文本文件的log,就是写文件。 配置参数如果是16进制数如何保存呢? SetTimer的问题。 vc ado mssql 修改字段的值报错 谁有Gamebryo引擎的帮助文档呀? VC如何实现进度条??(如果能用,马上付分) 问个弱弱的问题:我的类怎么在类视图里看不到了? 请问:将SOCKET的缓冲区设置为0的好处和坏处?? 一个关于CStringList的问题? C++ Primer 是一本什么样的书啊。 这个问题比较难,我要编个SQLServer监控软件,请问如何编程得到数据库剩余空间 ADO连接ACCESS数据库出现错误,请指教! 关于alpha测试,贴图缺失的问题
StartServiceCtrlDispatcher这个返回错误
比如说,建立服务之后,在服务管理器中,开启服务时,会处理哪些代码?
sc create 服务名 binPath= "C:\FtpServer\XXXX.exe" 注意binPath=后面有个空格
这个只是安装吧,不是启动服务吧
不好意思,看错了,启动服务我都是通过控制面板手动搞的哈,比较低端,你能帮我的,如果是通过控制面板来启动服务的话,会执行代码中StartServiceCtrlDispatcher吗?
这个只是安装吧,不是启动服务吧
不好意思,看错了,启动服务我都是通过控制面板手动搞的哈,比较低端,你能帮我的,如果是通过控制面板来启动服务的话,会执行代码中StartServiceCtrlDispatcher吗?
会执行StartServiceCtrlDispatcher()的吧。我调试的时候只能先有进程了才能附加,所以要看的话只能打log了。
比如在你的exe主函数里应该有SERVICE_TABLE_ENTRY ServiceTable[] =
{
{SERVICENAME,(LPSERVICE_MAIN_FUNCTION)ServiceMain},
{NULL,NULL}
};StartServiceCtrlDispatcher(ServiceTable);
这样的话,你从控制面板启动服务的时候会执行ServiceMain()
.
刚接触,有很多不懂,我就多问几句了
在很多例子中,都是在Main()函数里面有判断
if (stricmp(lpCmdLine, "/install") == 0)
{
Install();
}
else if (stricmp(lpCmdLine, "/uninstall") == 0)
{
Uninstall();
}
else
{
if (!::StartServiceCtrlDispatcher(st))
{
LogEvent(_T("Register Service Main Function Error!"));
}
}这样,在启动服务的时候,会再次进入Main函数么?
刚接触,有很多不懂,我就多问几句了
在很多例子中,都是在Main()函数里面有判断
if (stricmp(lpCmdLine, "/install") == 0)
{
Install();
}
else if (stricmp(lpCmdLine, "/uninstall") == 0)
{
Uninstall();
}
else
{
if (!::StartServiceCtrlDispatcher(st))
{
LogEvent(_T("Register Service Main Function Error!"));
}
}这样,在启动服务的时候,会再次进入Main函数么?这个我还真不知道,不过你可以打log看看。即便你程序启动不了,但是如果是要进main函数的话,总不可能是第一句出错,所以你在第一句打log看看会不会走。然后从控制面板服务管理器里去启动,看你的log是不是每次都打。
对了,我只有在shell里面通过CServicesText.exe -start这样才有log,通过服务管理器去启动,怎么打log啊
对了,我只有在shell里面通过CServicesText.exe -start这样才有log,通过服务管理器去启动,怎么打log啊
你就在main函数第一行打log啊,然后通过服务管理器不停的去启动,停止,启动,停止,看log有没。
对了,我指的是文本文件的log,就是写文件。