{"slug": "infinite-jetbrains-resharper-trial", "title": "Infinite Jetbrains Resharper trial", "summary": "The article describes a batch script designed to reset the trial period for JetBrains software, specifically ReSharper C# and C++. The script works by deleting evaluation license folders and registry keys, then modifying device identifier files to circumvent trial expiration. It requires all JetBrains services to be stopped before execution and is intended to repeatedly extend the trial period indefinitely.", "body_md": "JetBrainsTrial.bat\n\n      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.\n      \nLearn more about bidirectional Unicode characters\n\n \n    Show hidden characters\n\n::\n This bat file can be used to renew Resharper C# and Resharper C++ every time it runs out\n\n::\n It most likely works for all Jetbrains tools, however, I did not test this.\n\n::\n I was not able to find the original author for the reg key and the folders that needs to be deleted so if that is you feel free to reach out for credit\n\n@\necho\n \noff\n \n\nsetlocal\n \nenableDelayedExpansion\n\n:\nconfirm\n\necho\n Did you stop all Jetbrains services?\n\necho\n Jetbrains toolbox AND any other tool using it such as Rider, Visual Studio, ...\n\nset\n /p \n\"\nuserInput\n=\n (Y/YES): \n\"\n\nset\n \n\"\nuserInput\n=\n!userInput:~\n0\n,\n1\n!\n\"\n \n&\n \nset\n \n\"\nuserInput\n=\n!userInput:~\n0\n,\n1\n!%userInput:~\n1\n%\n!\n\"\n\nset\n \n\"\nuserInput\n=\n!userInput:~\n0\n,\n1\n!%userInput:~\n1\n%\n\"\n \n&\n \nset\n \n\"\nuserInput\n=\n!userInput:~\n0\n,\n1\n!%userInput:~\n1\n%\n\"\n\nfor\n \n%%a\n \nin\n (y yes) \ndo\n (\n\n \nif\n /i \n\"\n!userInput!\n\"\n==\n\"\n%%a\n\"\n (\n\n \necho\n Continuing...\n\n \ngoto\n continue\n\n    )\n\n)\n\necho\n Please make sure that all services are stopped, otherwise it may not work.\n\ngoto\n confirm\n\n:\ncontinue\n\nREM\n Delete eval folder with licence key and options.xml which contains a reference to it\n\nfor\n \n%%I\n \nin\n (\n\"\nWebStorm\n\"\n, \n\"\nIntelliJ\n\"\n, \n\"\nCLion\n\"\n, \n\"\nRider\n\"\n, \n\"\nGoLand\n\"\n, \n\"\nPhpStorm\n\"\n, \n\"\nResharper\n\"\n, \n\"\nPyCharm\n\"\n) \ndo\n (\n\n \nfor\n /d \n%%a\n \nin\n (\n\"\n%USERPROFILE%\n\\.\n%%I\n*\n\"\n) \ndo\n (\n\n \nrd\n /s /q \n\"\n%%a\n/config/eval\n\"\n\n \ndel\n /q \n\"\n%%a\n\\config\\options\\other.xml\n\"\n\n    )\n\n)\n\nreg\n delete \n\"\nHKEY_CURRENT_USER\\Software\\JavaSoft\n\"\n /f\n\nREM\n Change device identifiers\n\nset\n \n\"\nhex\n=\n\"\n\nset\n \n\"\nlen\n=\n12\n\"\n\nset\n \n\"\nchars\n=\n0123456789ABCDEF\n\"\n\nset\n \n\"\nchar\n=\n-\n\"\n\nset\n \n\"\ninputFile[0]\n=\n%appdata%\n\\JetBrains\\PermanentPackageCheckerId\n\"\n\nset\n \n\"\ninputFile[1]\n=\n%appdata%\n\\JetBrains\\PermanentDeviceId\n\"\n\nset\n \n\"\ninputFile[2]\n=\n%appdata%\n\\JetBrains\\PermanentUserId\n\"\n\nset\n \ni\n=\n0\n\n:\nloop\n\nif\n \ndefined\n inputFile[\n%i%\n] (\n\n \nset\n \nfile\n=\n!inputFile[%i%]!\n\n \nset\n \n\"\ntempFile\n=\n!file!\n.tmp\n\"\n\n \nfor\n /f \n\"\ndelims=\n\"\n \n%%a\n \nin\n (\n!file!\n) \ndo\n (\n\n \nset\n \n\"\nline\n=\n%%a\n\"\n\n \n::\n Find the last occurrence of the character\n\n \nfor\n /l \n%%i\n \nin\n (0,1,1023) \ndo\n (\n\n \nset\n \n\"\ncharPos\n=\n%%i\n\"\n\n \nif\n \n\"\n!line:~\n%%i\n!\n\"\n==\n\"\n\"\n \ngoto\n \nreplace\n\n \nif\n \n\"\n!line:~\n%%i\n,\n1\n!\n\"\n==\n\"\n%char%\n\"\n \nset\n \n\"\nlastPos\n=\n%%i\n\"\n\n\t\t)\n\n\t\t:\nreplace\n\n \nset\n \n\"\nbeforeChar\n=\n!line:~\n0\n,%lastPos%!\n\"\n\n \n\n \ncall\n :\nrandom\n\n \n\n \nset\n \n\"\nnewLine\n=\n!beforeChar!!char!!hex!\n\"\n\n \necho\n \n!newLine!\n>>\n\"\n%tempFile%\n\"\n\n\t)\n\n \nmove\n /Y \n\"\n%tempFile%\n\"\n \n\"\n!file!\n\"\n \n>\nnul\n\n \necho\n Fixed \n!file!\n\n \n\n \nset\n /a \ni\n+=\n1\n\n \ngoto\n :\nloop\n\n)\n\ngoto\n :\nexit\n\n:\nrandom\n\nset\n \n\"\nhex\n=\n\"\n\nfor\n /l \n%%i\n \nin\n (1,1,\n%len%\n) \ndo\n (\n\n \nfor\n /f \n\"\ntokens=*\n\"\n \n%%n\n \nin\n ('powershell -NoLogo -NoProfile -Command Get-Random -Minimum \n-0\n -Maximum 15') \ndo\n \nset\n \n\"\nrnd\n=\n%%~n\n\"\n\n \ncall\n \nset\n \n\"\nhex\n=\n!hex!\n%%c\nhars:~\n!rnd!\n,1\n%%\n\"\n\n)\n\nexit\n /b\n\n:\nexit\n\npause", "url": "https://wpnews.pro/news/infinite-jetbrains-resharper-trial", "canonical_source": "https://gist.github.com/MrPaXe/c4490bfa147d18f7b88aa0c83c8d560b", "published_at": "2024-10-20 23:17:37+00:00", "updated_at": "2026-05-22 17:37:22.472952+00:00", "lang": "en", "topics": ["developer-tools"], "entities": ["JetBrains", "Resharper", "Rider", "Visual Studio", "WebStorm", "IntelliJ", "CLion"], "alternates": {"html": "https://wpnews.pro/news/infinite-jetbrains-resharper-trial", "markdown": "https://wpnews.pro/news/infinite-jetbrains-resharper-trial.md", "text": "https://wpnews.pro/news/infinite-jetbrains-resharper-trial.txt", "jsonld": "https://wpnews.pro/news/infinite-jetbrains-resharper-trial.jsonld"}}