场景还原:python2.7开发的项目,制作成了windows服务,随系统启动。系统重启后发现服务未能自动启动,检查事件查看器日志发现服务先于Mysql数据库服务启动,由于服务中必须对MySQL进行访问,所以服务启动失败。尽管设置了启动失败后尝试重启,但是不能让项目服务自启动。

问题详述:1.xp系统不能设置服务“自动(延迟)”模式

2.服务先于MySQL服务启动。在代码中设置了睡眠,但是windows的服务机制是系统会在服务自启一段时间(未验证,但是一定有)要求服务返回服务状态(是否已经运行)。如果此时程序睡眠无响应,系统会认为服务启动失败。实际上程序会在经历了睡眠之后启动,此时服务状态已被认定为未启动,所以系统只提供启动按钮,服务变成了系统无法控制的进程,无法打开也无法关闭,只能通过杀死进程来停止程序。

解决方案:

1.打开注册表(win+r   regedit),打开 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services路径。

2.找到自己需要设置依赖项的服务,新增/修改 多字符串值:DependOnService。值为先于服务启动的服务或程序。

注:

sc conifg 服务名 depend= "依赖项" ,此cmd命令貌似不很靠谱,可能书写有误吧。

设置windows服务依赖项的更多相关文章

  1. 设置Windows服务的访问权限

    作者:beyond 默认情况下,只有管理员组成员.LocalSystem和Power Users组成员帐户才有权启动.停止服务.为了让普通用户也可以控制该服务,我们可以手动设置其访问权限.可能有些初学 ...

  2. 如何设置 Windows 开机启动项

    点击[开始]-[运行](或者使用快捷键-Win + R),输入 msconfig

  3. angular.js添加自定义服务依赖项方法

    <!DOCTYPE html> <html lang="en" ng-app="myapp"> <head> <met ...

  4. Windows服务安装命令:

    sc create YY.SmsPlatform.RemoteDataCenter binPath= "E:\YY.SmsPlatform\YY.SmsPlatform.RemoteData ...

  5. 玩转Windows服务系列——Windows服务小技巧

    伴随着研究Windows服务,逐渐掌握了一些小技巧,现在与大家分享一下. 将Windows服务转变为控制台程序 由于默认的Windows服务程序,编译后为Win32的窗口程序.我们在程序启动或运行过程 ...

  6. 玩转Windows服务系列——Windows服务启动超时时间

    最近有客户反映,机房出现断电情况,服务器的系统重新启动后,数据库服务自启动失败.第一次遇到这种情况,为了查看是不是断电情况导致数据库文件损坏,从客户的服务器拿到数据库的日志,进行分析. 数据库工作机制 ...

  7. 玩转Windows服务系列——Windows服务小技巧

    原文:玩转Windows服务系列——Windows服务小技巧 伴随着研究Windows服务,逐渐掌握了一些小技巧,现在与大家分享一下. 将Windows服务转变为控制台程序 由于默认的Windows服 ...

  8. Windows服务小技巧

    Windows服务小技巧 阅读目录 开始 将Windows服务转变为控制台程序 注册服务为自动启动服务 注册服务时设置服务的依赖关系 添加自定义命令行参数 自定义命令行参数演示 系列链接 伴随着研究W ...

  9. 制作Windows服务和安装程序(C#版)

    http://blog.sina.com.cn/s/blog_5f4ffa170100vt2b.html 1.创建服务项目: 打开VS 2005 编程环境,在C#中新建Windows服务程序 2.将安 ...

随机推荐

  1. 将字符串转换成xml并取得对应的值

    如数据库中有一个字段保存了xml格式的一串字符串: <?xml version="1.0" encoding="utf-16"?><Array ...

  2. C#List实现行转列

    List实现行转列的通用方案 最近在做报表统计方面的需求,涉及到行转列报表.根据以往经验使用SQL可以比较容易完成,这次决定挑战一下直接通过代码方式完成行转列.期间遇到几个问题和用到的新知识这里整理记 ...

  3. JavaScript取出字符串和尾随空格

    书写JavaScript性能trim()之前和之后删除空字符串格,的功能的应用String物replace()方法去除空字符串端到端格.trim()例如,对于功能键下面的代码: <script ...

  4. respondsToSelector的作用

    1.respondsToSelector 用来推断某一个方法时候实现(以下的代码意思:假设baseAPIdidStartRequest这种方法实现了,那么就去调用,防止出现异常) if ([self. ...

  5. 好记性不如烂笔头88-spring3学习(9)-schema的配置的解读和说明

    Spring1使用了DTD格式,spring2以后使用的是schema的格式:使用schema的格式,支持了不同类型的配置拥有了自己的命名空间,让配置文件有了更加好的扩展性. 不论什么事情,都是有利有 ...

  6. Android面HTTP协议发送get要求

    /** * 采纳get办法要求 * * @param username * @param password * @return null表示求得的路径有问题,text返回请求得到的数据 */ publ ...

  7. 给CentOS 6安装Tomcat 7,从一开始

    由于给企业培训以及前面几年使用PHP太多了,这次server逐步转为使用JavaEE来搭建. 下载的JDK 7.8已经出来了,可是不太熟悉,所以还是下载7版本号.这里怎样安装JDK7不讲了. 当前最新 ...

  8. WPF ObjectDataProvider的使用-只能检索用

    <Window x:Class="CollectionBinding.MainWindow"        xmlns="http://schemas.micros ...

  9. centos 6 yum源记录,离线下载rpm包的办法

    wget -O /etc/yum.repos.d/CentOS6-Base-163.repo http://mirrors.163.com/.help/CentOS6-Base-163.repo rp ...

  10. 图像滤镜艺术---Photoshop实现Instagram之Mayfair滤镜效果

    原文:图像滤镜艺术---Photoshop实现Instagram之Mayfair滤镜效果 本文介绍一下如何使用Photoshop来实现Instagram中的Mayfair滤镜的效果. 以上就是这个滤镜 ...