吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1202|回复: 7
收起左侧

[其他求助] 帮忙写个批处理,实现重启服务和软件的功能

[复制链接]
oks 发表于 2021-9-29 01:57
100吾爱币


软件路径是 D:\Expressway\Projectsgb\Expway.exe
服务路径是 D:\MySQL\MySQL Server 5.5\bin\MySQLd

帮忙写个批处理文件,实现以下功能:

当运行这个批处理文件时,①自动把软件结束掉,②自动把服务重启,③服务重启完后,再启动软件(注意这个顺序不能乱。)

最佳答案

查看完整内容

@echo off taskkill /f /im Expway.exe >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 i ...

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

text44 发表于 2021-9-29 01:57
@echo off
taskkill /f /im Expway.exe
>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
for /f "skip=3 tokens=4" %%i in ('sc query mysql') do set "zt=%%i" &goto :next

:next
if /i "%zt%"=="RUNNING" (
echo 已经发现该服务在运行,正在关闭服务
net stop mysql
ping 127.0.0.1 -n 3
net start mysql
) else (
echo 该服务现在处于停止状态,即将开启服务
net start mysql
)
ping 127.0.0.1 -n 3
start D:\Expressway\Projectsgb\Expway.exe
exit

存成bat 试试
 楼主| oks 发表于 2021-9-29 08:53
text44 发表于 2021-9-29 04:27
@echo off
taskkill /f /im Expway.exe
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\sys ...

ping 127.0.0.1的作用是什么?
b1geRegg 发表于 2021-9-29 09:01
oks 发表于 2021-9-29 08:53
ping 127.0.0.1的作用是什么?

百度一下,测试本地回路是否正常
平淡最真 发表于 2021-9-29 09:19
oks 发表于 2021-9-29 08:53
ping 127.0.0.1的作用是什么?

理解为延时就行
大白痴先生 发表于 2021-9-29 11:25
下面是PowerShell脚本,第一个if语句是让脚本以管理员权限运行,剩下的三句话分别是停止程序、重启服务、启动程序,完全按照楼主的需求。把下面脚本另存为一个.ps1文件,然后右键点击选择“Run with PowerShell(以PowerShell运行)”即可。

[PowerShell] 纯文本查看 复制代码
if($script:MyInvocation.MyCommand.Path -ne $null) {
    $current_dir = Split-Path -Path $script:MyInvocation.MyCommand.Path -Parent;
    $current_script = Split-Path -Path $script:MyInvocation.MyCommand.Path -Leaf;
    if(!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {
        # NoExit makes keeps the window from closing. If you don't need it you can remove it.
        Start-Process powershell.exe -Verb RunAs -ArgumentList "-NoProfile", "-NoExit", "-ExecutionPolicy", "Bypass", "-Command", "cd `"'$current_dir'`"; &`"'.\$current_script'`""
        exit
    }
}

ps | ?{$_.path -eq "D:\Expressway\Projectsgb\Expway.exe"} | kill -force
Get-WmiObject win32_service | ?{$_.PathName -like "*D:\MySQL\MySQL Server 5.5\bin\MySQLd"} | select Name | Restart-Service -Force
&"D:\Expressway\Projectsgb\Expway.exe"

免费评分

参与人数 1吾爱币 +2 热心值 +1 收起 理由
oks + 2 + 1 我的系统环境有xp,win7和Win10,powershell的方式不通用

查看全部评分

text44 发表于 2021-9-29 20:19
oks 发表于 2021-9-29 08:53
ping 127.0.0.1的作用是什么?

延时 可自行修改 后面那个数字
text44 发表于 2021-9-29 20:20
oks 发表于 2021-9-29 08:53
ping 127.0.0.1的作用是什么?

延时 可自行修改 -n 后面那个数字
快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-20 05:44

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表