vc++ 编写Windows服务 1053错误

2023-11-13

http://xk861119.blog.163.com/blog/static/16327042010109102237317/


建立一个服务程序的最简单的方法是用VC中的ATL COM向导。主菜单中选择新建,然后选Projects中的ATL COM AppWizard,输入一个项目名,选择了所在目录后,点OK按钮,在出现的对话框中选择Service(EXE),点Finish即可。然后编译生成WinServer.exe。

用下面语句在命令提示符下进行安装

sc create WinServer binPath= "G:\01.MyProgram\WinServer\Bin\WinServer.exe" (binPath= 的后面有一个空格,我当时就郁闷了半天,后面就是.exe文件的所在路径)

安装以后 在启动总是提示:"错误1053:服务没有及时响应启动或控制请求。"

我后来重新在命令提示符下用下面的语句注册

G:\01.MyProgram\WinServer\Bin\WinServer.exe /RegServer

重新后安装以后 在启动还是提示:"错误1053:服务没有及时响应启动或控制请求。"

然后我在源码的每个函数里面添加了MessageBox弹出窗口作为调试信息,重新编译,重新注册、安装,怀着忐忑的心情等待着,可是等了半天,没有蹦出半个对话框,最终憋出一个还是:"错误1053:服务没有及时响应启动或控制请求。"

我失望的继续在网上查了一天的资料也没找到原因,再后来无意间找到了一个帖子,他的描述和我碰到的问题一样,当时真是太激动了,赶紧收起失望的心情,试一把,他的解决办法是:

   在project--->setting---->build中 把command中的

     "$(TargetPath)" /RegServer

修改成

      "$(TargetPath)" /Service

这次在编译的过程中就有很多的调试对话框弹出来,而且不需要再用上面的安装命令,在Windows服务已经安装了我编写的服务,一看心里高兴死了,这回终于有出路了,满怀信心的启动服务,我眼睛直勾勾的盯着进度条,过了一半多一点点,还没有弹出我预期的调试对话框,而且和以前一样停住了,我知道接下来会发生什么了,"错误1053:服务没有及时响应启动或控制请求。"的对话框再一次无情的弹了出来。

我想放弃了,但是理论上告诉我,不可能,别人的服务都能跑,为啥偏偏我的就不行呢,我继续在网上查找资料,黄天不负有心人,我又找到了一个帖子,按照其提供的方法解决了我的问题,按照下列步骤操作:

  1. 服务工具中单击想要启动,服务,然后单击 属性
  2. 用鼠标右键单击 登录 选项卡,然后单击以选中 允许服务与桌面交互 复选框。
  3. 单击 确定 退出 属性 对话框。

我启动服务,终于弹出了预期的对话框,服务启动成功。

我总结了一下,因为我在启动的过程中有对话框弹出,所以后面设置“允许服务与桌面交互”是必须的。我把调试对话框删除之后,用 "$(TargetPath)" /Service 的方法也是可以成功启动的。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vc++ 编写Windows服务 1053错误 的相关文章

随机推荐

  • uniapp+vue3+ts 使用pinia报错

    hasInjectionContext is not exported by node modules vue demi lib index mjs imported by node modules pinia dist pinia mjs
  • springboot开启多线程支持

    springboot开启多线程支持 springboot默认是可以支持多线程的 配置类上加上 EnableAsync注解 就可以在想多线程支持的方法上加上 Async该方法就可以自持多线程了 配置类 配置线程池 import org spr
  • 接口失败--net::ERR_HTTP2_PROTOCOL_ERROR 200,无法加载响应数据

    问题 接口报错 net ERR HTTP2 PROTOCOL ERROR 200 无法加载响应数据 后端返回固定一条数据的 可以正常下载导出 一般数据返回为100KB 接口报错 不明原因 解决 关闭前端配置访问网页的https 接口正常 还
  • 相机IO硬件输入输出

    工作那么久了不怎么用硬件触发 今天恶补一下 干什么用的 通过IO输入来触发相机拍照 或者通过相机的IO输出来触发光源 来一波参考网页 1 Basler相机硬触发的接线方法 2 PNP NPN与PLC 你还在傻傻分不清楚吗 3 BASLAR相
  • Centos系统中mongodb的安装详解

    1 mongodb安装 MongoDB的下载网址 Download MongoDB Community Server MongoDB 将下载的压缩包文件上传到centos系统中 可以直接使用rz scp或者可视化工具上传 解压缩文件 Mon
  • Python中sklearn版本的升级

    调用sklearn的impute时 发现sklearn中没有impute的模块 from sklearn impute import SimpleImputer 报错 ModuleNotFoundError No module named
  • Python 数据分析与可视化实战

    一 Python环境搭建与配置 Python作为一门优秀的编程语言 受到很多程序员和编程爱好者的青睐 近年来 Python还在办公领域大展拳脚 许多白领纷纷加入了学习Python的行列 这是因为Python在数据的采集 处理 分析与可视化方
  • 关于C++匿名命名空间

    C 另外有一种匿名的命名空间 来保证生成的符号是局部的 这样对于匿名空间中的变量等 外部都是不可见的 test3 cpp static void bar namespace 匿名的命名空间 float bar2 int foo test4
  • java类的加载过程

    Java 类加载机制 类从被加载到JVM中开始 到卸载为止 整个生命周期包括 加载 验证 准备 解析 初始化 使用和卸载七个阶段 其中类加载过程包括加载 验证 准备 解析和初始化五个阶段 类的加载过程 png 类的加载过程 加载 1 通过类
  • Unity中GetAxisRaw和GetAxis的区别

    GetAxis带有变化程度 GetAxisRaw更精准 在Unity中 Input GetAxis和Input GetAxisRaw函数都用于读取输入轴的值 但它们有一些区别 GetAxis函数返回的值是经过平滑处理的 即它会在一定时间内将
  • vpn原理

    1 VPN原理 VPN是虚拟专用网络的简称 简单的说就是利用公用网络架设专用网络 当我们打开VPN的时候 VPN就会在电脑上虚拟一个IP地址 当电脑要传输数据包时 VPN会对这个数据包进行加密 发出数据包的地址是VPN虚拟出来的地址 而接受
  • WPF的RenderTransform特效

    RenderTransform特效 变形 WPF中的变形 RenderTransform 类是为了达到直接去改变某个Silverlight对象的形状 比如缩放 旋转一个元素 的目的而设计的 RenderTransform包含的变形属性成员就
  • 操作系统题库

    第一章作业一 一 单选题 共5题 25 0分 操作系统的 管理部分负责对进程进行调度 A 存储器 B 设备 C 文件 D 处理机 正确答案 D 我的答案 D 下面操作系统 要保证系统有较高的吞吐能力 A 批处理系统 B 分时系统 C 网络操
  • Linux-文本处理

    一 字段截取 1 1 cut字段提取命令 格式 cut d 间隔符 f 列号 c 字符 cut 选项 文件名 区别 grep是行提取命令 cut是列提取命令 d 指定分隔符类型 f 指定打印第几列 c 按字符分割 按照单个字符进行分割 比如
  • ElementUI实现el-table列的显示与隐藏和列拖拽(RuoYi分离版)

    显示隐藏步骤思路 一 table要实现v for循环添加列的操作 二 给列添加v if属性 方法返回当前列是否显示隐藏 在RightToolBar添加列显示隐藏的图标控件
  • 树莓派详解

    参考文献 1 树莓派教程第一课 树莓派简介 十分钟玩转系列入门篇 哔哩哔哩 bilibili
  • 计算机网络断开后怎么连接,电脑网络断开怎样重新连接

    大家好 我是时间财富网智能客服时间君 上述问题将由我为大家进行解答 电脑网络断开重新连接的方法是 1 点击右下角网络图标 点击 打开网络和共享中心 2 点击 更改适配器设置 3 点击右键启用网络即可 网络是由节点和连线构成 表示诸多对象及其
  • 腾讯高性能RPC开发框架Tars实现服务治理(微服务)

    Github https github com Tencent Tars 1 介绍 Tars是基于名字服务使用Tars协议的高性能RPC开发框架 同时配套一体化的服务治理平台 帮助个人或者企业快速的以微服务的方式构建自己稳定可靠的分布式应用
  • C++ string类的实现

    个人简介 作者简介 大家好 我是菀枯 支持我 点赞 收藏 留言 格言 不要在低谷沉沦自己 不要在高峰上放弃努力 前言 在C语言中 没有专门用来表示字符串的类型 C语言的字符串是一系列以 0 为结尾的字符的集合 虽然C语言为这样的字符串提供了
  • vc++ 编写Windows服务 1053错误

    http xk861119 blog 163 com blog static 16327042010109102237317 建立一个服务程序的最简单的方法是用VC中的ATL COM向导 主菜单中选择新建 然后选Projects中的ATL