我在PC上安装了据说免费的VS Community 2017,三十天后,我收到VS的此消息,称我的许可证已过期。
执照?过期了吗 我认为社区版是“永远免费”的,因此带有“社区”标签。这是怎么回事?我尝试使用我的Outlook.com帐户登录,但显示“出了点问题”,并返回到同一屏幕。
如何获得VS 2017的完全免费版本,以便可以从事FOSS项目?
我在PC上安装了据说免费的VS Community 2017,三十天后,我收到VS的此消息,称我的许可证已过期。
执照?过期了吗 我认为社区版是“永远免费”的,因此带有“社区”标签。这是怎么回事?我尝试使用我的Outlook.com帐户登录,但显示“出了点问题”,并返回到同一屏幕。
如何获得VS 2017的完全免费版本,以便可以从事FOSS项目?
Answers:
登录后,30天试用期将消失!
“并且,如果您已经登录,请先注销,然后再次登录。” –b1nary.atr0phy
要绕过“还剩30天必须登录才能上网”,只需登录一次Microsoft帐户,您将获得%LocalAppData%\ Microsoft \ VSCommon \ OnlineLicensing文件夹,您可以将其复制到脱机PC。
重要免责声明:以下提供的信息仅用于教育目的!延长Visual Studio Community 2017的试用期可能是非法的!
因此,让我们开始吧。
感兴趣的注册表项:HKEY_CLASSES_ROOT\Licenses\5C505A59-E312-4B89-9508-E162F8150517\08878
。我认为08878
子项在安装过程中可能会有所不同(为什么不呢?)。我只对自己的一个进行了测试。因此,如果您不能匹配下面描述的正确值,请检查其他子项。存储在该密钥中的二进制值用加密CryptProtectData
。因此,请先使用解密它CryptUnprotectData
。感兴趣的字节数(小尾数):
[-16]
并且[-15]
是有效期的一年;[-14]
并且[-13]
是一个月的有效期;[-12]
并且[-11]
是到期日。增加这些值(最好是年份:))将延长您的试用期并摆脱屏蔽屏幕!我什么都不知道这样一个工具,允许编辑加密的注册表值,所以我的小程序C++
和Windows API
看起来像:
RegGetValue
CryptUnprotectData
Data.pbData[Data.cbData-16]++;
CryptProtectData
RegSetValue
如果您可以使用您的语言访问注册表和加密功能,那么实际的语言并不重要。我会流利C++
。抱歉,出于道德原因,我没有发布即用型代码。
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser
在PowerShell中以admin 身份执行。
A.如果尚未登录,请登录。
B.如果已经登录,请单击帐户设置页面上的链接检查更新的许可证。
C. “我们无法下载许可证。请确保您的帐户已通过身份验证。” 如果遇到此消息,请注销并重新登录。您可以通过单击“注销”链接来注销,然后通过单击Visual Studio右上角的帐户图标来重新登录。或者,您可以单击链接重新输入您的凭据。此链接很好地表明您的帐户未与Microsoft服务器同步,并且错误消息正确无误,因为您的帐户未通过身份验证并且许可证无法刷新。
重新登录并成功验证您的帐户后,您将看到“重新输入凭据”链接消失了。这很好地表明您现在可以继续更新许可证。如果不这样做,则可以再次单击“检查更新的许可证”链接。这次,您会看到一则简短的确认消息,并将列出您关联的电子邮件地址。
如果要摆脱此烦人的警告,登录是不可避免的。但是,即使您从第一天开始就一直签约,您仍然可能会遇到此警告。根据我的经验,如果您最近更改了帐户密码,或者向帐户添加了2FA(两步验证),或者重置了该帐户的恢复代码以及应用密码,则可能会发生这种情况。这也可能与不活动或Microsoft对Microsoft帐户的“登录体验”所做的最新更改有关。
无论是什么原因,登录或注销然后再次重新登录似乎都是解决此烦恼的最佳方法。
我正在使用通过MAPS Action Pack订阅获得许可的Visual Studio Professional。由于新版本的Microsoft合作伙伴中心,必须将订阅的用户添加到合作伙伴权益软件中。
合作伙伴中心->好处-> Visual Studio订阅->添加用户
之后,您必须注销并重新输入VS帐户设置中的凭据。
请记住,如果您位于带有某些代理的红色私有内,则必须注销并使用外部WIFI重新登录。
就我而言,问题实际上是我打破了machine.config,并且看起来VS无法建立连接,因此在我的machine.config中添加了以下几行
<!--
<system.net>
<defaultProxy>
<proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" />
</defaultProxy>
</system.net>
<!--
-->
将上一节替换为:
<!--
<system.net>
<defaultProxy>
<proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" />
</defaultProxy>
</system.net>
-->
VS开始工作。
不,社区版是免费的,因此只需登录并消除警告。有关更多详细信息,请检查以下链接。
https://visualstudio.microsoft.com/vs/support/community-edition-expired-buy-license/
谢谢,Ravinder