Skip to content

Commit

Permalink
Update to v1.3.2.0
Browse files Browse the repository at this point in the history
1. The project has now become a fully console offering
2. The system of command line arguments processing has been redesigned: added descriptions for each arguments, as well as required arguments without which it is impossible to start the project.
3. Updated screenshots and all instructions to the current version
4. Correction of minor inaccuracies in README.md
5. Added project preview in README.md

Thanks for the feedback, everyone!
  • Loading branch information
rzc0d3r committed Feb 22, 2024
1 parent fa7820b commit e7530f1
Show file tree
Hide file tree
Showing 8 changed files with 66 additions and 40 deletions.
9 changes: 6 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# ESET-KeyGen
ESET-KeyGen - Trial-Key & Account generator for ESET Antivirus (last test was on 22.02.2024 at 18:16 UTC+2)
ESET-KeyGen - Trial-Key & Account generator for ESET Antivirus (last test was on 23.02.2024 at 00:10 UTC+2)

![](img/project_preview.png)


---
# My github page is currently blocked by ESET Antivirus, so you will not be able to access the project.
Expand All @@ -19,13 +22,13 @@ It will ask the number of accounts and licenses to be generated. If you don't wa
## Using your Computer

### Installing Google Chrome / Firefox
#### Google Chrome
#### Google Chrome (fully supports)

1. [How to install Chrome on Windows](https://support.google.com/chrome/answer/95346?hl=en&co=GENIE.Platform%3DDesktop#zippy=%2Cwindows)
2. [How to install Chrome on Linux](https://support.google.com/chrome/answer/95346?hl=en&co=GENIE.Platform%3DDesktop#zippy=%2Clinux)
3. [How to install Chrome on Mac](https://support.google.com/chrome/answer/95346?hl=en&co=GENIE.Platform%3DDesktop#zippy=%2Clinux%2Cmac)

#### Firefox
#### Firefox (supported, but without auto-update)
1. [How to install Firefox on Windows](https://support.mozilla.org/en-US/kb/how-install-firefox-windows)
2. [How to Install Firefox on Linux](https://support.mozilla.org/en-US/kb/install-firefox-linux)
3. [How to Install Firefox on Mac](https://support.mozilla.org/en-US/kb/how-download-and-install-firefox-mac)
Expand Down
Binary file modified img/account_run_win.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified img/key_run_win.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/project_preview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
47 changes: 27 additions & 20 deletions main.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
██╔══╝ ╚════██║██╔══╝ ██║ ██╔═██╗ ██╔══╝ ╚██╔╝ ██║ ██║██╔══╝ ██║╚██╗██║
███████╗███████║███████╗ ██║ ██║ ██╗███████╗ ██║ ╚██████╔╝███████╗██║ ╚████║
╚══════╝╚══════╝╚══════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝
Project Version: v1.3.1.3
Project Version: v1.3.2.0
Project Devs: rzc0d3r, AdityaGarg8, k0re,
Fasjeit, alejanpa17, Ischunddu,
soladify
Expand Down Expand Up @@ -93,23 +93,32 @@ def webdriver_installer_menu(edge=False): # auto updating or installing google c
return webdriver_path

if __name__ == '__main__':
logger.console_log(LOGO)
print(LOGO)
args_parser = argparse.ArgumentParser()
args_parser.add_argument('--account', action='store_true')
args_parser.add_argument('--force', action='store_true')
args_parser.add_argument('--cli', action='store_true')
args_parser.add_argument('--firefox', action='store_true')
args_parser.add_argument('--edge', action='store_true')
args_parser.add_argument('--no-headless', action='store_true')
args_parser.add_argument('--skip-webdriver-menu', action='store_true')
args_parser.add_argument('--only-update', action='store_true')
args_parser.add_argument('--custom-browser-location', type=str, default='')
# Required
## Browsers
args_browsers = args_parser.add_mutually_exclusive_group(required=True)
args_browsers.add_argument('--chrome', action='store_true', help='Launching the project via Google Chrome browser')
args_browsers.add_argument('--firefox', action='store_true', help='Launching the project via Mozilla Firefox browser')
args_browsers.add_argument('--edge', action='store_true', help='Launching the project via Microsoft Edge browser')
## Modes of operation
args_modes = args_parser.add_mutually_exclusive_group(required=True)
args_modes.add_argument('--key', action='store_true', help='Generating an antivirus license key')
args_modes.add_argument('--account', action='store_true', help='Generating an antivirus account')
# Optional
args_parser.add_argument('--skip-webdriver-menu', action='store_true', help='Skips installation/upgrade webdrivers through the my custom wrapper (The built-in selenium-manager will be used)')
args_parser.add_argument('--no-headless', action='store_true', help='Shows the browser at runtime (The browser is hidden by default, but on Windows 7 this option is enabled by itself)')
args_parser.add_argument('--force', action='store_true', help='Disables all user input, but waiting for the Enter key to be pressed before exiting the program remains')
args_parser.add_argument('--cli', action='store_true', help='Disables all user input (GitHub CI Requirements)')
args_parser.add_argument('--only-update', action='store_true', help='Updates/installs webdrivers and browsers without generating account and license key')
args_parser.add_argument('--custom-browser-location', type=str, default='', help='Set path to the custom browser (to the binary file, useful when using non-standard releases, for example, Firefox Developer Edition)')
try:
# Init
# changing input arguments for special cases
if platform.release() == '7' and webdriver_installer.get_platform()[0] == 'win': # fix for Windows 7
sys.argv.append('--no-headless')
if '--cli' in sys.argv:
sys.argv.append('--force')
# initialization and configuration of everything necessary for work
args = vars(args_parser.parse_args())
driver = None
webdriver_path = None
Expand All @@ -118,20 +127,18 @@ def webdriver_installer_menu(edge=False): # auto updating or installing google c
browser_name = 'firefox'
if args['edge']:
browser_name = 'edge'
if not args['skip_webdriver_menu'] and browser_name != 'firefox':
if not args['skip_webdriver_menu'] and browser_name != 'firefox': # updating or installing microsoft edge webdriver
webdriver_path = webdriver_installer_menu(args['edge'])
if webdriver_path is not None:
os.chmod(webdriver_path, 0o777)
driver = shared_tools.initSeleniumWebDriver(browser_name, webdriver_path, browser_path=args['custom_browser_location'], headless=(not args['no_headless']))
driver = shared_tools.initSeleniumWebDriver(browser_name, webdriver_path, args['custom_browser_location'], (not args['no_headless']))
if args['only_update']:
if not args['cli']:
print('Press Enter...')
sys.exit(0)
# Work
only_account = False
# main part of the program
if args['account']:
logger.console_log('\n-- Account Generator --\n')
only_account = True
else:
logger.console_log('\n-- KeyGen --\n')
email_obj = sec_email_api.SecEmail()
Expand All @@ -145,7 +152,7 @@ def webdriver_installer_menu(edge=False): # auto updating or installing google c
driver = EsetReg.returnDriver()
output_line = f'\nEmail: {email_obj.get_full_login()}\nPassword: {eset_password}\n'
output_filename = 'ESET ACCOUNTS.txt'
if not only_account:
if args['key']:
EsetKeyG = eset_keygen.EsetKeygen(email_obj, driver)
EsetKeyG.sendRequestForKey()
license_name, license_out_date, license_key = EsetKeyG.getLicenseData()
Expand All @@ -162,5 +169,5 @@ def webdriver_installer_menu(edge=False): # auto updating or installing google c
if str(type(E)).find('selenium') and traceback_string.find('Stacktrace:') != -1: # disabling stacktrace output
traceback_string = traceback_string.split('Stacktrace:', 1)[0]
logger.console_log(traceback_string, logger.ERROR)
if '--cli' not in sys.argv:
input('Press Enter...')
if not args['cli']:
input('Press Enter...')
6 changes: 3 additions & 3 deletions wiki/AccountGenerator.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
1. Run main.py with the --account parameter using the console:
```
python main.py --account
python main.py --chrome --account
```
> Or run compiled .exe file
```
ESET-KeyGen_v1.0.9.0-191023-2057_win32.exe --account
ESET-KeyGen_v1.3.2.0_win64.exe --chrome --account
```
> File name is unique for each version! Do not copy the above command. This is an example!
Expand All @@ -31,4 +31,4 @@ ESET-KeyGen_v1.0.9.0-191023-2057_win32.exe --account

![](https://github.com/rzc0d3r/ESET-KeyGen/blob/main/img/activation_with_account_7.png)

> Just click "Continue" until you are told that you have successfully activated the antivirus.
> Just click "Continue" until you are told that you have successfully activated the antivirus.
41 changes: 29 additions & 12 deletions wiki/CommandLineArguments.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,31 @@
# All command line arguments
------------------------------------------------------------------------------------------------------------------------------------

| Argument Command | Default | Description |
| --------------------- | -------- | ------------------------------------------------------------------------------------------------------ |
| --account | disabled | Generates an account instead of a key |
| --firefox | disabled | Launching the project via Firefox browser (Runs through the Google Chrome browser by default) |
| --edge | disabled | Launching the project via Microsoft Edge browser (Runs through the Google Chrome browser by default) |
| --skip-webdriver-menu | disabled | Skips installation/upgrade webdrivers through the my custom wrapper (By default, everything should be done automatically through selenium-manager) |
| --no-headless | disabled, but for Windows 7 auto enabled | Shows the browser at runtime (by default hides the browser at runtime) |
| --force | disabled | Disables all user input, but waiting for the Enter key to be pressed before exiting the program remains |
| --cli | disabled | Disables all user input (GitHub CI Requirements) |
| --only-update | disabled | Updates / installs webdrivers and browsers without generating account and keys |
| --only-update | disabled | Updates / installs webdrivers and browsers without generating account and keys |
| --custom-browser-location {string} | empty | Set path to the custom browser (to the binary file, useful when using non-standard releases, for example, Firefox Developer Edition)
# Required
### Browsers
> Need to enter only one argument from this group!!!
| Argument Command | Description |
| --------------------- | ---------------------------------------------------------------------------------------------------------- |
| --chrome | Launching the project via Google Chrome browser |
| --firefox | Launching the project via Mozilla Firefox browser |
| --edge | Launching the project via Microsoft Edge browser |
### Modes of operation
> Need to enter only one argument from this group!!!
| Argument Command | Description |
| --------------------- | ---------------------------------------------------------------------------------------------------------- |
| --key | Generating an antivirus license key |
| --account | Generating an antivirus account |

--------------------------------------------------------------------------------------------------------------------------------------

# Optional
| Argument Command | Description |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| --skip-webdriver-menu | Skips installation/upgrade webdrivers through the my custom wrapper (The built-in selenium-manager will be used) |
| --no-headless | Shows the browser at runtime (The browser is hidden by default, but on Windows 7 this option is enabled by itself) |
| --force | Disables all user input, but waiting for the Enter key to be pressed before exiting the program remains |
| --cli | Disables all user input (GitHub CI Requirements) |
| --only-update | Updates/installs webdrivers and browsers without generating account and license key |
| --custom-browser-location {string} | Set path to the custom browser (to the binary file, useful when using non-standard releases, for example, Firefox Developer Edition) |
3 changes: 1 addition & 2 deletions wiki/KeyGenerator.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@

1. Run main.py using console:
```
python main.py
python main.py --chrome --key
```
> Or click on it in File Explorer. Similarly with a compiled .exe file

2. Wait until appears 'Press Enter...' and you will see the account data

Expand Down

0 comments on commit e7530f1

Please sign in to comment.