首页 > 编程开发 > C类语言    日期:2023-07-24 / 浏览

C# 使用批处理启动Windows服务

当期环境:Win11家庭版

注:批处理文件编码方式需设置为ANSI

启动服务:

@echo off
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
echo 关闭服务
net stop "CloudFilmLaunchService"
echo 开启服务
net start "CloudFilmLaunchService"
pause

方式二:

@echo off
@title Installing windows services
path %SystemRoot%\Microsoft.NET\Framework\v4.0.30319
echo==============================================================
echo=
echo         Windows Service program installation
echo=
echo==============================================================
@echo off
InstallUtil.exe CloudFilmLaunchService.exe 
pause

卸载服务:

@echo off
@title Windows service uninstall
path %SystemRoot%\Microsoft.NET\Framework\v4.0.30319
echo==============================================================
echo=
echo          Windows service uninstall
echo=
echo==============================================================
@echo off
InstallUtil.exe /u  CloudFilmLaunchService.exe
pause

安装XXWindowsService,[SC] OpenService 失败

服务命令无法启动,参考:https://blog.csdn.net/qq_39569480/article/details/124150871 解决问题

1.使用管理员身份运行VS 重新生成服务文件

2.修改注册表配置,重启电脑,配置如下:

打开cmd,输入regedit,进入注册表==》HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA 的值改为0

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA 的值改为0

C# 如何使用批处理启动Windows服务

觉得上面的内容有用吗?快来点个赞吧!

点赞() 我要打赏

温馨提示 : 本站内容来自会员投稿以及互联网,所有源码及教程均为作者总结编辑,请大家在使用过程中提前做好备份,以免发生无法预知的错误,源码类教程请勿直接用于生产环境!

 可能感兴趣的文章