目前写的程序是一个用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,最后还要弄一堆命令来安装和卸载. 今天给大家提供一种方式,直接使用我们的程序来安装/卸载服务,并且可以 ...
随机推荐
-
LookUpEdit手动编辑怎么设置呢?
近来遇到一问题,用LookUpEdit控件时,无法进行手动删除上面的数据,为此查找资料进行修改: 解决方法如下:LookUpEdit的属性-->Properties->TextEditSt ...
-
Android--Toast(吐司)的基本使用
1.学习Android开发,不能从单方面的知识去考虑问题,要从全面出发. 2.Toast(吐司) 1.打开eclipse 选择文件存放的位置 点击Dbms,测试是否连接成功(海马模拟器或者夜神模拟器) ...
-
$( document ).ready()&;$(window).load()
$( document ).ready() https://learn.jquery.com/using-jquery-core/document-ready/ A page can't be man ...
-
Centos 7中 vim 中文乱码
参考:http://www.myexception.cn/operating-system/1534005.html 一. sudo vim /etc/vimrc 在文件中加入如下几行: s ...
-
Android平台之不预览获取照相机预览数据帧及精确时间截
在android平台上要获取预览数据帧是一件极其容易的事儿,但要获取每帧数据对应的时间截并不那么容易,网络上关于这方面的资料也比较少.之所以要获取时间截,是因为某些情况下需要加入精确时间轴才能解决问题 ...
-
Oracle中注意用户的访问权限
新增表.序列.存储过程等,要注意用户(例如System)的权限.如果在增删改查过程中出现数据库读写权限的报错,则在建表(或者序列.存储过程等)时,在脚本前面加 GRANT CREATE TABLE T ...
-
Educational Codeforces Round 54 (Rated for Div. 2) D:Edge Deletion
题目链接:http://codeforces.com/contest/1076/problem/D 题意:给一个n个点,m条边的无向图.要求保留最多k条边,使得其他点到1点的最短路剩余最多. 思路:当 ...
-
qss 的使用
//设置样式表 QStringList qss; qss.append("QFrame{border:0px solid #00BB9E;}"); // qss.append(&q ...
-
MySQL数据类型1
1.float.double.decimal类型用法详解 三者的区别介绍 float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位) double:双精度实型, ...
-
7.15python进程锁
#!/usr/bin/env python #!--*--coding:utf-8 --*-- #!@Time :2018/7/14 17:33 #!@Author TrueNewBee #锁 # 火 ...