如何把一个c语言程序做成windows服务开机自启动
目前写的程序是一个用c语言实现socket侦听的,那么如何把这个程序做成开机自启动呢?
我们是通过vs6.0,编译后生成了.exe文件,然后对这个exe文件进行开机自启动设置。具体设置步骤如下:
第一,注册服务名称。
(1)下载Instsrv.exe和srvany.exe两个文件。并将其拷贝到C:\WINDOWS文件夹下。
(2)执行命令。C:\WINDOWS>instsrv
hope c:\WINDOWS\srvany.exe
这里,我要添加的服务名称叫做hope.此时会提示以下信息:
Make sure that you go into the Control Panel and use
the Services applet to change the Account Name and
Password that this newly installed service will use
for its Security Context.
第二, 找关联。
(1)要让hope服务正常运行,必须在注册表中指定该服务对应的应用程序。运行regedit.
找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,此处有我们刚刚创建的hope服务。
(2)点击hope,选择“新建”-》“项”,将其命名为Parameters.
选定Parameters,在右侧窗口新建一个名为Application的字符串值,将其数值数据设置为hope服务对应的应用程序绝对路径,比如:D:\SDTEL\test\Debug\test.exe.
(3)接着在创建两个字符串值:AppDirectory和AppParameters.其中AppDirectory指定程序所在的目录【此处即为:D:\SDTEL\test\Debug】,AppParameters指明程序的运行参数,当然如果没有的话,这个的值可以空着不写【此处,我的main函数就没有传参,所以空着就醒了,不用写】。
配置完图片如下:
(4)接下来,打开“服务”,找到刚才添加的hope服务,打开其属性对话框,选择“登录”选项卡,
“登录身份”中选中“本地系统账户”,如果不想让服务在运行的时候弹出状态窗口,不要勾选“允许服务于桌面交互”的复选框,点击确定。【注意,在我们这里我们是需要看到控制台打印出来的东西的,这里的复选框我们需要选中。】
配置图片如下:
(5)点击确定后,启动服务即可。
如何把一个c语言程序做成windows服务开机自启动的更多相关文章
- 利用JAVA Service Wrapper把JAVA程序做成windows服务
今天做了一个读取数据入库的程序.由于读取的数据每天都更新,于是就想把程序做成一个服务,每天定时执行.研究了一下,发现有几种方式可以做.下面我主要记录一下JAVA Service Wrapper方式. ...
- 将控制台程序做成windows服务
一:添加windows服务 二:修改XXXInstaller1的StartType=Automatic,修改ProcessInstaller1的Account=LocalSystem 三:在progr ...
- 李洪强iOS开发之【零基础学习iOS开发】【02-C语言】02-第一个C语言程序
前言 前面已经唠叨了这么多理论知识,从这讲开始,就要通过接触代码来学习C语言的语法.学习任何一门语言,首先要掌握的肯定是语法.学习C语言语法的目的:就是能够利用C语言编写程序,然后运行程序跟硬件(计算 ...
- C语言入门(2)——安装VS2013开发环境并编写第一个C语言程序
在C语言入门系列中,我们使用Visual studio 2013 Professional作为开发工具.本篇详细介绍如何安装Visualstudio 2013 Professional并写出我们第一个 ...
- Android For JNI(一)——JNI的概念以及C语言开发工具dev-c++,编写你的第一个C语言程序,使用C启动JAVA程序
Android For JNI(一)--JNI的概念以及C语言开发工具dev-c++,编写你的第一个C语言程序 当你的Android之旅一步步的深入的时候,你其实会发现,很多东西都必须去和framew ...
- C学习笔记-第一个C语言程序
第一个C语言程序 #include<stdio.h> //1 int main() //2 { printf("This is a C language"); //3 ...
- 【做中学】第一个 Go 语言程序:漫画下载器
原文地址: 第一个 Go 语言程序:漫画下载器: https://schaepher.github.io/2020/04/11/golang-first-comic-downloader 之前学了点 ...
- 第一个C语言程序
从第一个C语言程序了解C语言 了解关键字 了解函数 注释 C语言的执行流程 标识符 C语言的学习重难点 从第一个C语言程序了解C语言 上图是一个在控制台上显示“Hello, World!”的C语言源代 ...
- C#创建服务及使用程序自动安装服务,.NET创建一个即是可执行程序又是Windows服务的exe
不得不说,.NET中安装服务很麻烦,即要创建Service,又要创建ServiceInstall,最后还要弄一堆命令来安装和卸载. 今天给大家提供一种方式,直接使用我们的程序来安装/卸载服务,并且可以 ...
随机推荐
- httpclient 文件上传
/** * 上传文件 */ public static Boolean uploadFile(String fileName, String url) { ...
- Cocos2d-x3.0游戏实例《不要救我》第十篇(结束)——使用Json配置数据类型的怪物
如今我们有2种类型的怪物,并且创建的时候是写死在代码里的,这是要作死的节奏~ 所以.必须可配置.不然会累死人的. ; i < size; ++i) { int id = root[i][&quo ...
- nyoj 322 Sort 【树阵】
这个问题实际上是在测试树的数组. 代码: #include <cstdio> #include <cstring> int c[1005]; int lowbit(int x) ...
- Maven直接部署Web应用Tomcat
1. 下载解压版tomcat,并配置环境变量.所以tomcat你可以成功启动. 使用版本解压tomcat可以方便查看tomcat的后台输出的出错信息,便于调试. 2. 给tomcat配置用户名密码. ...
- [SignalR]Groups操作——后续
原文:[SignalR]Groups操作——后续 继续http://www.cnblogs.com/YanZhiwei/p/3359175.html之前,那怎么实现发送的消息推送到隶属于这个组的用户呢 ...
- [SignalR]异常信息捕获以及处理
原文:[SignalR]异常信息捕获以及处理 异常处理,一般采用try..catch方式处理,而signalR里面有HubPipelineModule类可以捕获到Hub内发生的异常信息. 从上图中,可 ...
- 使用javascript实现html文字不可选
如何使用js让html该文本是不可选定它?首先想到的是用css选择实现,如下面: -webkit-touch-callout: none; -webkit-user-select: none; -kh ...
- emacs quick open and jump file (or buffer) which name is current word
Sometime, we need to open a file or buffer which name begin with current word in emacs. Here I give ...
- mySQl该数据库不能将中国的做法
1. 更改MySQL安装文件夹(C:\Program Files\MySQL\MySQL Server 5.5)的my.ini文件 设置: default-character-set=utf8 cha ...
- MVC 定义JsonpResult实现跨域请求
MVC 定义JsonpResult实现跨域请求 1:原理 在js中,XMLHttpRequest是不能请求不同域的数据,但是script标签却可以,所以可以用script标签实现跨域请求.具体是定义一 ...