如何让Windows开机自动启动dotnet DLL且不显示控制台窗口
实现.NET Core应用开机无控制台自动启动
方法1:用VBScript包装启动命令
- 新建一个
.vbs文件(比如StartAutoTEF.vbs),写入以下代码:
Set WshShell = CreateObject("WScript.Shell") WshShell.Run """dotnet"" ""C:\实际路径\AutoTEF.Service.dll""", 0, False
- 把
C:\实际路径\AutoTEF.Service.dll替换为你的dll真实路径 - 将这个vbs文件放到开机启动目录:
C:\Users\你的用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup - 开机时VBScript会后台启动程序,不会显示控制台窗口
方法2:创建Windows服务(推荐长期运行场景)
- 打开管理员权限的PowerShell,执行以下命令创建服务:
New-Service -Name "AutoTEFService" -BinaryPathName "dotnet C:\实际路径\AutoTEF.Service.dll" -StartupType Automatic
- 启动服务:
Start-Service AutoTEFService
- 程序会以服务身份后台运行,完全无窗口,受系统服务管理器管控,稳定性更高
- 如需删除服务,先停止再移除:
Stop-Service AutoTEFService Remove-Service AutoTEFService
方法3:通过任务计划程序配置
- 打开「任务计划程序」,点击「创建基本任务」:
- 命名任务(如“AutoTEF开机启动”),点击下一步
- 触发器选择「当计算机启动时」,下一步
- 操作选择「启动程序」,下一步
- 程序或脚本填
dotnet,添加参数填C:\实际路径\AutoTEF.Service.dll,下一步 - 勾选「使用最高权限运行」,在设置里勾选「隐藏」选项
- 完成配置后,开机时任务会后台启动程序,无控制台窗口
内容的提问来源于stack exchange,提问作者Leonardo Lima
相关产品推荐
相关产品推荐

