本文说明了,如何在未注册Nvidia账户的情况下,绕过GeForce Experience(以下简称为GFE
)账户登录的方法,从而直接使用登陆后才能使用的各种功能。在PC未联网
的情况下,此方法依旧能正常绕过登录,直接进入GFE
主界面;还说明了屏蔽GFE
自动下载更新程序的方法。
注意
1. 文本的方法(理论上)适用于所有版本的GeForce Experience,截止2022/4/17日,已在以下GFE版本测试通过:
- GFE版本3.25.1.27,N卡驱动版本512.15
- 3.24.2.126
- 3.20.2.34
- 3.16.0.122
点击版本号,下载对应版本修改好的app.js文件
2. 当显卡驱动版本与GFE版本不匹配时,GFE的某些功能(例如:串流、录屏)会无法启用。经测试,GFE的3.16.0.122版本可与 N卡驱动391.35 、397.93 、382.16相匹配。
3. GFE会强制更新到最新版本,自动下载最新显卡驱动。可通过修改系统的hosts文件,屏蔽Nvidia相关域名解析,阻止自动下载和强制更新。
1. 使用VS Code(或其它代码编辑器)打开文件C:\Program Files\NVIDIA Corporation\NVIDIA GeForce Experience\www\app.js
注意,不要格式化代码!
本文提供的正则表达式适用于,从未格式化过的代码中搜索关键代码。
2. 代码修改
2.1 实现绕过登录
基本思路:
(考虑到将来GFE版本更新后,其代码可能发生了一些细微变化,但关键代码的正则表达式不会变化,可根据此思路自行定位代码的添加位置)
- 使用关键代码的正则表达式
"choose"===\w\.nvActiveAuthView
搜索形如"choose"===y.nvActiveAuthView
的关键代码,搜索到的关键代码中的字母y
会随GFE版本而变化;在其它版本中搜索到的代码可能为"choose"===S.nvActiveAuthView
。 - 搜索到关键代码后,开始定位添加代码的位置。
"choose"===y.nvActiveAuthView
往后的第一个}
后,就是添加代码的位置,添加的代码(任何GFE版本都一样,不随版本变化
)为;this.handleLoggedIn({sessionToken:"",userToken:"",user: {core:{displayName:"匿名用户",primaryEmailVerified: true}}});
- 添加的代码中,第一个字符为
;
或,
均可,两种写法在代码执行逻辑上等价。
具体操作:
- 使用正则表达式
"choose"===\w\.nvActiveAuthView[\D]*\)\}
搜索代码,其中的[\D]*
考虑到了兼容GFE旧版本代码的细微变化。 - 替换内容为
"choose"===this.nvActiveAuthView)};this.handleLoggedIn({sessionToken:"",userToken:"",user: {core:{displayName:"匿名用户",primaryEmailVerified: true}}});
搜索到(替换前)的代码:
替换后的代码:
2.2 去除登录窗口(非必须,也可手动关闭登录窗口)
- 使用正则表达式
\w\.selectView\(\)\},\w\.selectView=function\(\)\{
搜索代码, - 替换内容为
return;
搜索到(替换前)的代码:
替换后的代码:
之后保存文件,打开GFE即可看到修改后的效果,下图中的界面显示约0.5秒后,自动进入主界面。
3. 屏蔽 GFE自动下载更新程序。
注意:修改系统的hosts文件后,GFE、浏览器和下载器都将无法正常访问被屏蔽的域名;需要手动更新GFE或显卡驱动时,手动将被屏蔽的域名从hosts文件中移除即可。
经调试分析,GFE(中文版)自动下载更新和显卡驱动的域名有:
#更新显卡驱动 所需的域名
international-gfe.download.nvidia.com
#更新GFE 所需域名
cn.download.nvidia.com
ota.nvidia.com
ota-downloads.nvidia.com
其它语言版本GFE的自动下载更新的域名列表在第4行不同。
hosts文件
路径为C:\Windows\System32\drivers\etc\hosts
每次修改完hosts文件
后,需要执行 ipconfig /flushdns
命令,刷新系统的DNS缓存,使hosts的修改生效。
为方便起见,可通过bat批处理脚本,完成hosts文件修改和DNS刷新。
@echo off
echo 设置hosts文件为可写
attrib -R C:\WINDOWS\system32\drivers\etc\hosts
echo 屏蔽Nvidia自动更新服务器域名
echo 127.0.0.1 international-gfe.download.nvidia.com >>"%windir%\system32\drivers\etc\hosts"
echo 127.0.0.1 cn.download.nvidia.com >>"%windir%\system32\drivers\etc\hosts"
echo 127.0.0.1 ota.nvidia.com >>"%windir%\system32\drivers\etc\hosts"
echo 127.0.0.1 ota-downloads.nvidia.com >>"%windir%\system32\drivers\etc\hosts"
ipconfig /flushdns
pause
复制以上代码块,保存成bat格式文件,执行即可。
以上就是本文的全部内容了。