前段时间更换了主板和CPU,显卡为CPU核显,因为有大量程序,没有全新安装系统,而是在老系统下安装,以前的程序都完整保留,重新打补丁,一切看起来都很完美。
直到玩Angry birds,才发现opengl不能用,怀疑是驱动问题,把显卡驱动升级到最新版还是无法解决。google了无数解决方法都不见效。用GPU Caps Viewer查看,OpenGL驱动没有找到。
偶尔看到有篇文章说注销用户,用另一个账号登录可以用opengl,想起来还有一个账号,马上注销后用另一个账号登录系统,发现OpenGL果然可用。
问题出现在哪里?肯定是用户的配置不同,于是把两个用户的注册表中HKCU都导出成reg文件,用TotalCommander比较两个文件,搜索opengl,发现在新注册表中多了
[HKEY_CURRENT_USER\Software\Intel\Display\CUICOM] 一项,另一个起作用的reg文件没有该项,于是试着将此项整个删除。
再启动 GPU Caps Viewer 查看发现OpenGL驱动程序正确,版本为3.1。困扰几天的问题终于解决。
结论:更换显卡后,旧的注册表项没有删除,在HKCU中出现两个intel显卡配置,推测系统用第一个去初始化opengl,当然是失败。