python - 在 Windows 中关闭蓝牙
问题描述
我想关闭 Windows 中的蓝牙适配器,因为它有时会干扰其他设备。
我在 Windows 中使用 python 3.6 和 PyQt5。
我尝试使用停止服务。
net stop bthserv /y
这只会停止服务,但不会关闭控制面板或任务栏中的蓝牙
无论如何我可以使用 Windows 中的命令行或使用 Python/PyQt5 将其关闭吗?
from subprocess import TimeoutExpired, Popen, run, call, check_output, STARTUPINFO, STARTF_USESHOWWINDOW, SW_HIDE, PIPE, STDOUT
class BT:
def process_f(self, command, bsize=4096):
print('1a) Process started...')
startupinfo = STARTUPINFO()
startupinfo.dwFlags |= STARTF_USESHOWWINDOW
startupinfo.wShowWindow = SW_HIDE
p = Popen(command, stdout=PIPE, stderr=PIPE,
startupinfo=startupinfo, bufsize=bsize, universal_newlines=True)
try:
out, err = p.communicate(timeout=300)
except TimeoutExpired:
p.kill()
out, err = p.communicate()
return out.split(), err.split()
def service_switch(self, service, on=False, off=False):
""" Start or stop a service in windows """
if on:
switch = 'start'
elif off:
switch = 'stop'
else:
return False
command = 'net {} {} /y'.format(switch, service)
p = self.process_f(command)
out, err = p[0], p[1]
print('STDOUT: {}'.format(out))
print('STDERR: {}'.format(err))
bt = BT()
bt.service_switch('bthserv', on=True)
# bt.service_switch('bthserv', off=True)
解决方案
推荐阅读
- python - 从 sys 导入 exit 是运行内置函数还是模块中的函数?
- angular - 为什么以角度格式或矩格式格式化日期从日期开始随着时间 T00:00:00.000Z 减少
- reactjs - 将 dom 从子组件更新到父组件
- jquery - 如何根据 CSS 中的 ID 更改伪元素内容
- .net - 为什么 System.Text.Json.Serialization.JsonSerializer 编码双引号而不是仅仅转义它们?
- java - 无法添加子实体 - JPA OneToMany 关系
- c# - OPC-UA“值”和“属性值”有什么区别
- vue.js - 安装 VueJS CLI 时如何修复 npm WARN deprecated 错误
- python - 拆分字符串行代码而不拆分其输出
- asp.net-core - 如何在.net核心中为多个请求运行api