需要禁用和启用蓝牙自动连接的bat文件

查看 19|回复 2
作者:beat2   
判断当前启用则禁用,判断当前是禁用则启用
蓝牙自动连接:在 Windows 系统中,默认情况下,已配对过的蓝牙设备会在设备处于可检测状态时自动重新连接。

蓝牙, 文件

zjl3480   

@echo off
setlocal EnableDelayedExpansion
:: 检查管理员权限
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo 检测到缺少管理员权限...设置中需要修改系统注册表,此操作需要管理员权限。
    echo 正在请求管理员权限...
    powershell -Command "Start-Process -FilePath '%0' -Verb RunAs"
    exit /b
)
:: 设置蓝牙自动连接注册表项路径
set "regPath=HKLM\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Devices"
:: 获取当前蓝牙自动连接状态
set "autoConnect=0"
for /f "tokens=3" %%a in ('reg query "%regPath%" /v "AutoConnectPolicy" 2^>nul ^| find "REG_DWORD"') do (
    set "autoConnect=%%a"
)
:: 判断当前状态并切换
if %autoConnect% equ 0 (
    echo 启用蓝牙自动连接...
    reg add "%regPath%" /v "AutoConnectPolicy" /t REG_DWORD /d 0x00000003 /f
    echo 蓝牙自动连接已启用。
) else (
    echo 禁用蓝牙自动连接...
    reg add "%regPath%" /v "AutoConnectPolicy" /t REG_DWORD /d 0x00000000 /f
    echo 蓝牙自动连接已禁用。
)
:: 重启蓝牙服务确保设置生效
echo.
echo 正在重启蓝牙服务以应用更改...
net stop bthserv >nul 2>&1
net start bthserv >nul 2>&1
echo.
echo 操作已完成!
pause
   
zjl3480   


zjl3480 发表于 2025-7-1 14:39
@echo off
setlocal EnableDelayedExpansion

[Bash shell] 纯文本查看 复制代码@echo off
setlocal EnableDelayedExpansion
:: 检查管理员权限
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo 检测到缺少管理员权限...设置中需要修改系统注册表,此操作需要管理员权限。
    echo 正在请求管理员权限...
    powershell -Command "Start-Process -FilePath '%0' -Verb RunAs"
    exit /b
)
:: 设置蓝牙自动连接注册表项路径
set "regPath=HKLM\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Devices"
:: 获取当前蓝牙自动连接状态
set "autoConnect=0"
for /f "tokens=3" %%a in ('reg query "%regPath%" /v "AutoConnectPolicy" 2^>nul ^| find "REG_DWORD"') do (
    set "autoConnect=%%a"
)
:: 判断当前状态并切换
if %autoConnect% equ 0 (
    echo 启用蓝牙自动连接...
    reg add "%regPath%" /v "AutoConnectPolicy" /t REG_DWORD /d 0x00000003 /f
    echo 蓝牙自动连接已启用。
) else (
    echo 禁用蓝牙自动连接...
    reg add "%regPath%" /v "AutoConnectPolicy" /t REG_DWORD /d 0x00000000 /f
    echo 蓝牙自动连接已禁用。
)
:: 重启蓝牙服务确保设置生效
echo.
echo 正在重启蓝牙服务以应用更改...
net stop bthserv >nul 2>&1
net start bthserv >nul 2>&1
echo.
echo 操作已完成!
pause
您需要登录后才可以回帖 登录 | 立即注册

返回顶部