在windows 10上运行软件时禁用通知



当程序在windows上运行时,有没有办法禁用通知?

谢谢!

此处的网页显示如何通过编辑注册表禁用通知。

考虑到这一点,应该可以使用winreg模块来查询和设置相关的密钥。

下面是一些示例代码。这在我当前的系统上是不起作用的,因为我的权限级别没有设置为允许它(我在winreg.SetValueEx调用上得到了"PermissionError:[WinError 5]访问被拒绝"(,所以我不能测试它,但它应该会给你一些如何到达那里的想法。(修改注册表至少需要以管理员身份运行。上次我需要这样做时,我遵循了从Python脚本中请求UAC提升的建议,这对我很有效。(

import winreg
app_name = "Microsoft.SkyDrive.Desktop"
notifications_key = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings'
keyname = notifications_key + "\" + app_name
# check its value
regkey = winreg.OpenKey(winreg.HKEY_CURRENT_USER, keyname)
try:
enabled_setting = winreg.QueryValueEx(regkey, "Enabled")
notification_enabled = enabled_setting[0] # 1 = enabled; 0 = not enabled
except FileNotFoundError:
notification_enabled = None
winreg.CloseKey(regkey)
print(f"Enabled value: {notification_enabled}")
# disable notifications
regkey = winreg.OpenKey(winreg.HKEY_CURRENT_USER, keyname, winreg.KEY_SET_VALUE)
winreg.SetValueEx(regkey, "Enabled", 0, winreg.REG_DWORD, 0)
winreg.CloseKey(regkey)

最新更新