我有一个似乎常见的问题。我在最令人敬畏的计算机之一上运行Windows 7家庭高级版(当它去年购买时),某些视觉效果会自动关闭。
我的平均用户体验评分很高,因此无法解释为何会出现这种情况。关闭的唯一功能是“拖动时显示窗口内容”选项。这真让我烦恼。
目前在线无法解决此问题。除了“必须与您计算机上安装的其他应用程序发生冲突。”
是的,我确实知道应用程序导致了这种冲突。这是我的血腥互联网服务提供商的软件 - 你知道......当你连接到网络时,你绝对必须打开这个应用程序。
所以,我有一个想法。如果我可以订阅某个活动,以便我在后台运行的应用程序会检测到“拖动时显示窗口内容”选项何时关闭,那么该应用程序只会将其重新打开。
当我手动执行此操作时,它似乎保持有效一两个小时,然后再次关闭。
是否可以处理这些类型的事件,并重新启动某些视觉效果功能?如果是的话,这有什么资源吗?
我还没有在这个sibject上找到任何东西。
答案 0 :(得分:1)
是的,当更改系统设置时,WM_SETTINGSCHANGE消息将发送到所有窗口。然后,您可以使用SPI_GETDRAGFULLWINDOWS调用SystemParametersInfo以确定是否禁用“拖动时显示窗口内容”并使用SPI_SETDRAGFULLWINDOWS启用它。
所以你需要做的就是创建一个带有表单的应用程序(甚至可以保持隐藏状态)并覆盖表单WndProc并处理WM_SETTINGSCHANGE
消息并调用SystemParametersInfo
使用p / Invoke。 SystemParamtersInfo is available at pinvoke.net
更容易的是更改HKCU\Control Panel\Desktop\DragFullWindows注册表值的安全性,以便无法更改。