如何把一个c语言程序做成windows服务开机自启动

简介: 原文:如何把一个c语言程序做成windows服务开机自启动 目前写的程序是一个用c语言实现socket侦听的,那么如何把这个程序做成开机自启动呢? 我们是通过vs6.0,编译后生成了.exe文件,然后对这个exe文件进行开机自启动设置。
原文: 如何把一个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函数就没有传参,所以空着就醒了,不用写】。

配置完图片如下:

如何把一个c语言程序做成windows服务开机自启动

 (4)接下来,打开“服务”,找到刚才添加的hope服务,打开其属性对话框,选择“登录”选项卡,

“登录身份”中选中“本地系统账户”,如果不想让服务在运行的时候弹出状态窗口,不要勾选“允许服务于桌面交互”的复选框,点击确定。【注意,在我们这里我们是需要看到控制台打印出来的东西的,这里的复选框我们需要选中。】

配置图片如下:

如何把一个c语言程序做成windows服务开机自启动

(5)点击确定后,启动服务即可。

目录
相关文章
|
2月前
|
存储 缓存 算法
在C语言中,数据结构是构建高效程序的基石。本文探讨了数组、链表、栈、队列、树和图等常见数据结构的特点、应用及实现方式
在C语言中,数据结构是构建高效程序的基石。本文探讨了数组、链表、栈、队列、树和图等常见数据结构的特点、应用及实现方式,强调了合理选择数据结构的重要性,并通过案例分析展示了其在实际项目中的应用,旨在帮助读者提升编程能力。
68 5
|
2月前
|
C语言
C语言编程中,错误处理至关重要,能提升程序的健壮性和可靠性
C语言编程中,错误处理至关重要,能提升程序的健壮性和可靠性。本文探讨了C语言中的错误类型(如语法错误、运行时错误)、基本处理方法(如返回值、全局变量、自定义异常处理)、常见策略(如检查返回值、设置标志位、记录错误信息)及错误处理函数(如perror、strerror)。强调了不忽略错误、保持处理一致性及避免过度处理的重要性,并通过文件操作和网络编程实例展示了错误处理的应用。
75 4
|
2月前
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
65 1
|
2月前
|
网络协议 物联网 数据处理
C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势
本文探讨了C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势。文章详细讲解了使用C语言实现网络通信程序的基本步骤,包括TCP和UDP通信程序的实现,并讨论了关键技术、优化方法及未来发展趋势,旨在帮助读者掌握C语言在网络通信中的应用技巧。
49 2
|
2月前
|
程序员 C语言
C语言中的指针既强大又具挑战性,它像一把钥匙,开启程序世界的隐秘之门
C语言中的指针既强大又具挑战性,它像一把钥匙,开启程序世界的隐秘之门。本文深入探讨了指针的基本概念、声明方式、动态内存分配、函数参数传递、指针运算及与数组和函数的关系,强调了正确使用指针的重要性,并鼓励读者通过实践掌握这一关键技能。
44 1
|
2月前
|
网络安全 Windows
Windows server 2012R2系统安装远程桌面服务后无法多用户同时登录是什么原因?
【11月更文挑战第15天】本文介绍了在Windows Server 2012 R2中遇到的多用户无法同时登录远程桌面的问题及其解决方法,包括许可模式限制、组策略配置问题、远程桌面服务配置错误以及网络和防火墙问题四个方面的原因分析及对应的解决方案。
|
3月前
|
边缘计算 安全 网络安全
|
3月前
|
开发框架 .NET API
Windows Forms应用程序中集成一个ASP.NET API服务
Windows Forms应用程序中集成一个ASP.NET API服务
111 9
|
3月前
|
应用服务中间件 Apache Windows
免安装版的Tomcat注册为windows服务
免安装版的Tomcat注册为windows服务
139 3
|
3月前
|
Java 关系型数据库 MySQL
java控制Windows进程,服务管理器项目
本文介绍了如何使用Java的`Runtime`和`Process`类来控制Windows进程,包括执行命令、读取进程输出和错误流以及等待进程完成,并提供了一个简单的服务管理器项目示例。
47 1