300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Windows-bat或exe文件设置为开机自动启动项或服务项

Windows-bat或exe文件设置为开机自动启动项或服务项

时间:2020-05-20 12:31:10

相关推荐

Windows-bat或exe文件设置为开机自动启动项或服务项

前言

之前在Ubuntu18.04上实现了Sakura Frp程序的自启服务,实现开机自动启动frp执行文件,客户机可以直接实现后续的远程连接操作。目前需要在WindowsServer上完成frp软件的自启服务,记录一下尝试过的方法。需要提前下载好frpc_windows_amd64.exe执行文件,并且知道自己的frp启动参数,文中以-f 123456789:6666为例。

设置开启启动项

创建一个.bat文件:D:\Sakurafrp_Windows\sakurafrp.bat,内容为:

frpc_windows_amd64.exe -f 123456789:6666

创建一个.vbs文件:D:\Sakurafrp_Windows\Sakura_frpc.vbs,内容为:

set ws=WScript.CreateObject("WScript.shell")ws.Run "sakurafrp.bat /start",0

找到开机自动启的文件夹:运行栏中键入shell:startup,窗口跳转到目录:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

Sakura_frpc.vbs文件的快捷方式,粘贴进自动启动的文件内,即可实现开机自动启动目标.bat脚本。

博主测试后,的确是可以实现开机自动启动功能,后台也的确可以看到frpc_windows_amd64.exe的运行状态,但是状态不稳定,导致远程连接失效。于是转向设置自定义启动服务。

设置开机自启服务

sc命令

参考:SC命令—安装、开启、配置、关闭windows服务 bat批处理

注册一个自定义服务

C:\Users\Administrator>sc create sakurafrp binPath= "D:\Sakurafrp_Windows\sakurafrp.bat"[SC] CreateService 成功

设置为开机自启服务

C:\Users\Administrator>sc config sakurafrp start=auto[SC] ChangeServiceConfig 成功

启动sakurafrp服务报错

C:\Users\Administrator>net start sakurafrp服务没有响应控制功能。请键入 NET HELPMSG 2186 以获得更多的帮助。

服务没有响应控制功能这个错误网上没找到特别合适的解决方法,于是使用以下的工具实现开机自启自定义服务操作!不过还是要将刚才的废物服务给删除掉(╬▔皿▔):sc delete sakurafrp

instsrv.exe和srvany.exe工具

参考:将BAT文件注册为windows服务的方法

软件下载,并转移文件;

下载地址:srvany.exe和instsrv.exe 正式版,然后将instsrv.exesrvany.exe复制进C:\Windows\System32

创建自定义服务

以管理员身份运行cmd,在窗口中键入命令:instsrv mySakurafrp C:\Windows\System32\srvany.exemySakurafrp为自定义的服务名称。此时报错:

C:\Windows\system32>instsrv mySakurafrp C:\Windows\System32\srvany.exeUnable to find the file at the given path.

解决方案参考在64位windows下使用instsrv.exe和srvany.exe创建windows服务,主要还是因为在我们的64位电脑上运行32位instsrv.exesrvany.exe的原因,所以只需要将instsrv.exe和srvany.exe再复制进C:\Windows\SysWOW64即可,再次键入instsrv mySakurafrp C:\Windows\System32\srvany.exe完成自定义服务的创建。

添加注册表参数

计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mySakuraFrp目录下:

如果该服务名下没有Parameters项目,则对服务名称项目右击新建项,名称为Parameters,然后定位到Parameters项,新建以下几

个字符串值。

名称Application值为你要作为服务运行的.bat文件地址。

名称AppDirectory值为你要作为服务运行的.bat文件所在文件夹路径。

名称AppParameters值为你要作为服务运行的.bat文件启动所需要的参数。

将服务设置为自动启动

运行栏键入services.msc进入服务窗口,找到自定义服务,设置为自动启动即可!

重启测试

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。