windows系统bat脚本转exe

0、使用场景

部署windows操作系统下的web服务或程序,从制作安装包到设置开启自启,如启动jar包和自动打开浏览器

createinstall(制作安装包)nssm(服务自开机自启)Quick Batch File Compiler(启动bat脚本编译工具)

1、下载Quick Batch File Compiler

链接:https://pan.baidu.com/s/1BoEkKgBIDTpD-2owR0D6TQ
提取码:5jzh

2、解压安装

image

image

3、示例:bat启动nginx,启动jar包,打开浏览器(自动全屏),默认访问站点http://localhost:9527

@echo off
for /f "skip=3 tokens=4" %%i in ('sc query Nginx') do set "zt=%%i" &goto :next
:next
if /i "%zt%"=="STOPPED" (goto startNginx)

:startNginx
net start Nginx

netstat -an|findstr 9443 >nul
if errorlevel 1 (
    goto startEtm
)

:startEtm
set fileDir=D:\app\etm\
    for %%f in (%fileDir%etm-*.jar) do ( 
       start javaw -jar -Xms512m -Xmx1024m %%f
    )
    echo 启动工器具站端......

@echo off
netstat -an|findstr 1300 >nul
if errorlevel 1 (
    goto startRev
)

:startRev
set fileDir=D:\app\rev\
    for %%f in (%fileDir%receive*.jar) do ( 
       start javaw -jar -Xms512m -Xmx1024m %%f
    )
    echo 启动数据处理......

@echo off
ping /n 30 127.1 >nul
tasklist| find  /i  "erl.exe"
if  "%errorlevel%" == "1"  start  cmd /k "cd /d D:\app\emqx\emqx\bin&&emqx start&&exit"

@echo off
:check
    netstat -an|findstr 9443 >nul 
    if errorlevel 1 (
        echo 服务正在启动......
        ping /n 10 127.1 >nul
    goto check
) else (
    echo 正在准备浏览器配置
    ping /n 3 127.1 >nul
    start tasklist|findstr /i "chrome.exe" ||start chrome.exe --start-fullscreen "http://localhost:9527" 
    exit
)

注意:如果程序找不到浏览器的路径在本地找到路径加上

start tasklist|findstr /i “chrome.exe” ||start C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chrome.exe --start-fullscreen “http://localhost:9527”

4、转换

image

4、可以将需要执行的程序与脚本捆绑在一起,脚本中可以不用指定路径直接用

5、最后双击运行编译后的exe

6、使用nssm.exe工具将这个exe做成开机自启程序

图标转换工具

https://www.bejson.com/ui/icomaker/

参考

原文:https://blog.csdn.net/qq_38776582/article/details/116148280

bat脚本添加到windows服务:https://blog.csdn.net/dan5600/article/details/129138579

posted @ 2023-10-11 00:19  黄河大道东  阅读(31)  评论(0编辑  收藏  举报