SingeeKing
2019-03-29 22:07:30 +08:00
还发现了一个有趣的玩法……
IMPORTANT DISCLAIMER: Information provided below is for educational purposes only! Extending a trial period of Visual Studio Community 2017 might be ILLEGAL!
So let's get started.
Registry key of interest: HKEY_CLASSES_ROOT\Licenses\5C505A59-E312-4B89-9508-E162F8150517\08878. I assume the 08878 subkey may differ from installation to installation (why not, isn't?). I have tested only on my own one. So check other subkeys if you can not match proper values described below. Binary value stored in that key is encrypted with CryptProtectData. So decrypt it first with CryptUnprotectData. Bytes of interest (little-endian):
[-16] and [-15] is a year of expiration;
[-14] and [-13] is a month of expiration;
[-12] and [-11] is a day of expiration.
Increasing these values (preferable the year :) ) WILL extend your trial period and get rid of a blocking screen! I know nothing of such a tool that allows to edit encrypted registry values, so my small program in C++ and Windows API looks like:
RegGetValue
CryptUnprotectData
Data.pbData[Data.cbData-16]++;
CryptProtectData
RegSetValue
Actual language doesn't matter if you have access to registry and crypto functions in your language. I'm just fluent in C++. Sorry, I do not publish a ready-to-use code for ethical reason.