0


新建批处理bat命令一键重启Windows服务,并配置管理员打开权限

一、目标服务名称

  1. 使用WIN + R 组合键打开运行栏,输入services.msc在这里插入图片描述
  2. 找到相关服务(此处以Sdk Video Play Service为例),并右击打开属性界面 在这里插入图片描述
  3. 找到该服务的服务名称,如‘SucVideoSdkServer’在这里插入图片描述

二、新建批处理bat命令

  1. 新建txt文本,写入如下代码(以下以Sdk Video Play Service为例) 注意日常我们的服务名要带双引号,表示是一个整体
@echo off
echo 关闭服务
net stop "SucVideoSdkServer"
echo 开启服务
net start "SucVideoSdkServer"
pause

注:在net stop "服务名称"之后加入timeout 5,可以延迟5秒后再启动服务,时间可以随意调整

@echo off
echo 关闭服务
net stop "服务名称"
timeout 5
echo 开启服务
net start "服务名称"
pause

注:有些批处理需要很高的权限执行才能达到我们所需要的效果,将以下代码放入批处理最顶部就可以实现以管理员身份运行了。

@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 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 "SucVideoSdkServer"
echo 开启服务
net start "SucVideoSdkServer"
pause
  1. 将txt文本另存为bat文件

注:编码中红框默认为UTF-8格式,此格式将导致bat文件中中文字乱码,建议改为ANSI格式,如下图所示
在这里插入图片描述

三、运行批处理bat文件

运行建立的bat文件,得到如下图所示
在这里插入图片描述


本文转载自: https://blog.csdn.net/y562363753/article/details/129840843
版权归原作者 y562363753 所有, 如有侵权,请联系我们删除。

“新建批处理bat命令一键重启Windows服务,并配置管理员打开权限”的评论:

还没有评论