Releases: neuralpain/oneclickwinrar
v0.12.1, Update 712
What's new?
This is a bugfix update.
Note
- All downloads in this release are linked below.
- Download the WinRAR 7.12 installer directly if your internet is unstable or you are unable to download through the script.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
CHANGELOG
- Will now display the location of the installer after the download has been completed.
- Fix: Corrected a false positive for too many arguments was detected when only the "download-only" flag was set.
- Improve: Refactored the language parsing for null and english
- Other minor bug fixes and code improvements.
Have fun! 🚀 // 'cause why not?
v0.12.0, Update 712
What's new?
- New ASCII title!
- Automatic downloading of missing keygen
- Supports multiple download servers
- Other improvements and bug fixes
View details
User Interaction and Console Output
- An ASCII art title is now displayed in the console on startup.
- Console messages for
INFO
,WARN
, andERROR
, color-coded for visibility. - Interactive user prompts have been implemented for all key decision points, such as selecting an installation path, confirming a re-installation, or approving a license overwrite. This replaces previous non-interactive behaviors.
Script Config & Parsing
- The system for parsing the script's filename for configuration has been completely refactored from a single function into a more modular and robust set of functions.
- Support has been added for a simplified custom license format where only a
licensee
name is required; the script will use a default license type in this case. - Validation logic now handles requests for unsupported version/architecture combinations (e.g., 32-bit versions after support ended) by providing the user with interactive prompts and alternative options.
- The in-script documentation has been expanded with more detailed examples of supported naming conventions.
Download & Installation Process
- The script now utilizes multiple official download servers and includes an automatic retry mechanism to increase download reliability.
- A pre-download verification step has been added. It checks if the requested file exists on the server before initiating the full download, which prevents errors from invalid version requests.
- Local installer detection logic has been updated to recognize both modern (
winrar-x...
) and legacy (wrar...
) installer naming schemes. - A pre-installation check now verifies if the target WinRAR version is already installed and requests user confirmation before proceeding with a re-installation.
Licensing System
- Functionality has been added to automatically retrieve and download the keygen if it is not available locally when a custom license is requested.
- The script now prompts for user confirmation before overwriting an existing license, unless an overwrite mode is explicitly specified in the script name.
- When run in 'license-only' mode, if WinRAR is not found to be installed on the system, the script now offers the user the option to perform the installation first.
- Success notifications for custom licenses now display the licensee and license type that were used.
Environment Handling
- The script can now detect if both 32-bit and 64-bit versions of WinRAR are installed on the same system. If detected, it will prompt the user to select which installation to target for relevant operations (e.g., uninstalling, applying a license).
Internal Changes & Bug Fixes
- The script has undergone significant internal refactoring. Core processes have been modularized into dedicated functions, and numerous utility functions have been added to standardize operations.
- Fixed an issue where the downloaded installer file was not always deleted correctly after use when not explicitly set to be kept.
- Fixed a bug where internal variables for the license key file path were incorrectly defined, pointing only to the directory instead of the full file path.
- Internal documentation, including comment-based help blocks for functions, has been substantially expanded.
- Version constants and lists of known WinRAR versions have been added and updated to support validation logic.
Note
- All downloads in this release are linked below.
- Download the WinRAR 7.12 installer directly if your internet is unstable or you are unable to download through the script.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
CHANGELOG
- New: Add interactive user prompts for handling ambiguous situations like re-installing, choosing between 32/64-bit installations, or overwriting licenses.
- New: Add automatic downloading of the keygen executable if it is not found locally for custom license generation.
- New: Add pre-download verification to check if a requested installer exists on the server before starting the download.
- New: Add support for multiple download servers with an automatic retry mechanism to improve download reliability.
- New: The script now detects and allows management of systems with both 32-bit and 64-bit WinRAR installations.
- Fix: Corrected an issue where the downloaded installer file was not always deleted after use.
- Fix: Corrected a bug where the internal path to the license key file (
rarreg.key
) was incorrect. - Improve: Substantially refactored the script name parsing logic for better robustness and flexibility.
- Improve: The user interface now includes an ASCII art title and color-coded console messages.
- Improve: Expanded in-script documentation and added many new usage examples.
Have fun! 🚀 // 'cause why not?
v0.12.0 Beta 3
This beta version has significant refactoring, adds pre-download verification, and improves internal documentation and code structure compared to beta 2. Most of the original functionality remains the same.
View changes
Changes in Beta 3:
User Interaction & Console:
- A new standardized function,
Confirm-QueryResult
, has been implemented to manage all interactive user prompts. This function centralizes prompt logic, handles expected default answers (Y/n or y/N), and executes different actions based on user input. - The
Stop-OcwrOperation
function, which handles script termination, has been updated to accept an optional message parameter to display before exiting.
Messaging & Status Notifications:
- A centralized "messages" section has been added. This section defines script blocks that bundle toast notifications with script termination calls.
- This refactoring standardizes how the script exits and reports status for various success, warning, and error conditions, replacing scattered, inline notification logic.
Download & Installation Process:
- The
Get-WinrarInstaller
function now performs a pre-download check. It usesInvoke-WebRequest -Method Head
to verify that a requested installer file exists on the server before initiating the download. This prevents attempts to download invalid or non-existent versions. Connection verification to the download server has also been added before this check. - Internal function names were updated for clarity (e.g.,
Get-Installer
was renamed toGet-LocalWinrarInstaller
).
Internal Refactoring & Bug Fixes:
- Documentation: Extensive in-script documentation has been added.
- Validation: An additional validation check has been added to the
Confirm-ScriptNamePosition
function to better detect and prevent invalid script names. - Commented Code: The final block for generating success toast messages has been refactored to previous implementation and commented out. This will be addressed in a future version. The prior simple logic remains active.
Have fun! 🚀 // 'cause why not?
v0.12.0 Beta 2
This beta version introduces modifications to user interaction, configuration handling, and internal script logic compared to the previous Beta 1 release.
View changes
Changes in Beta 2:
User Interaction & Console Feedback:
- Console output for informational messages and warnings is now color-coded for improved visibility.
- The script issues interactive prompts in specific scenarios, including:
- When both 32-bit and 64-bit WinRAR installations are detected, allowing user selection.
- Before re-installing an already existing WinRAR version.
- When handling unsupported or ambiguous version/architecture requests, offering alternatives.
- Before overwriting an existing license file if not explicitly instructed.
- Script termination messages have been updated to provide clearer status (e.g., normal completion, error, warning).
Installation & Configuration Logic:
- The script now detects existing 32-bit, 64-bit, or dual (both) WinRAR installations and sets the target path accordingly, prompting the user if necessary.
- Requested WinRAR versions are validated against an internal list of known releases. Logic has been added to manage requests for unknown, unsupported, or ambiguous version/architecture combinations, often involving user confirmation.
- Language tags provided in script names are now resolved to their full language names in console output messages (e.g., "German" from "d").
- Default architecture determination for older WinRAR versions has been refined (e.g., defaulting to 32-bit for versions prior to v3.90, which was the first to offer a 64-bit option).
Pre-Operation Checks:
- A pre-installation check now determines if the target WinRAR version is already installed and prompts for user confirmation before proceeding with a re-installation.
- If "license-only" mode is active and the required WinRAR architecture is not found, the script now offers an option to perform the installation first.
Internal Script Changes & Fixes:
- Several new utility functions have been added for console text formatting, standardized message display (
Write-Info
,Write-Warn
), language code to name resolution (Get-LanguageName
), and version number formatting. - Core installation and licensing procedures have been modularized into separate functions (
Invoke-OwcrInstallation
,Invoke-OcwrLicensing
). - New internal constants define significant WinRAR version milestones (e.g.,
$OLDEST
,$FIRST_64BIT
,$KNOWN_VERSIONS
, language code lists). - A previous issue where the downloaded installer file might not be deleted correctly (when not explicitly set to be kept) has been addressed.
- The global variable
$script:CUSTOM_DOWNLOAD
has been renamed to$script:CUSTOM_INSTALLATION
. New state variables like$script:WINRAR_INSTALLED_LOCATION
and$script:DOWNLOAD_WINRAR
have been introduced.
Have fun! 🚀 // 'cause why not?
v0.12.0 Beta 1
This version introduces updates to download mechanisms, script name parsing for configuration, error handling, and internal organization, compared to v0.11.0.711.
View changes
Changes in Beta 1:
Download System:
- Support for multiple download servers (rarlab.com, win-rar.com) has been implemented. This includes an automatic retry mechanism if an initial download attempt fails.
- A new internal function,
Get-WinRarInstaller
, has been added to manage the download process from these servers.
Script Configuration & Parameter Parsing:
- The system for parsing the script's filename to determine operational parameters (such as requested WinRAR version, architecture, license details, and special operation modes like download-only and overwriting licenses) has undergone substantial refactoring.
- This refactoring includes the introduction of a primary new internal function
Confirm-ConfigData
and several sub-functions (e.g.,Confirm-ScriptNamePosition
,Get-DataFromConfig
,Confirm-DownloadConfig
) to provide more structured and robust extraction and validation of configuration data from the script name. - Logic to handle WinRAR's 32-bit version limitations (e.g., versions after 7.01 no longer supporting 32-bit) has been incorporated into the download configuration process.
Local Installer Detection:
- The internal logic for detecting existing WinRAR installer executables in the script's directory (managed by the
Get-Installer
function) has been revised and consolidated from previous separate functions.
Error Handling & User Notifications:
- Predefined script blocks have been introduced to generate more standardized error messages, which are displayed to the user via toast notifications.
- The content of various toast notifications has been updated for improved clarity. URLs within these notifications pointing to documentation now utilize predefined variables.
Licensing Process:
- A check is now performed to verify that WinRAR is installed on the system before the script attempts to apply a license. If WinRAR is not detected, the script will display a notification and exit the licensing step.
Internal Script Modifications:
- New internal constants have been added to represent specific WinRAR version milestones relevant to script logic (e.g.,
$LATEST_32BIT
,$LATEST_OLD_WRAR
). - Variables holding URLs for documentation have been standardized for consistent use.
- Some internal variable names have been updated for better clarity (e.g., the regex pattern variable
$winrar
was renamed to$winrar_file_pattern
). - Obsolete internal variables previously used in script name parsing (
$script:SCRIPT_NAME_LOCATION_LEFT
,$script:SCRIPT_NAME_LOCATION_MIDDLE_RIGHT
) have been removed as part of the parsing system refactor.
Have fun! 🚀 // 'cause why not?
v0.11.0, Update 711
What's new?
- Fix download-only failing whenever a specific version of WinRAR is not provided.
- Update default WinRAR version to 7.11.
Note
If you came from the main page and you're looking for the full package, this is it: v0.11.0.711 ZIP package.
All downloads in this release are linked below.
Tip
Download the incl.WinRAR-x64
package if you're unable to download through the script.
A package for Chinese users has been bundled here.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
Have fun! 🚀 // 'cause why not?
v0.10.0, Update 710
What's new?
- Update default WinRAR version to 7.10.
Important
As stated by WinRAR in the 6th entry in the WhatsNew.txt
of version 7.10, 32-bit operating systems are not supported anymore.
6. Windows Vista and 32-bit Windows are not supported anymore.
WinRAR requires Windows 7 x64 or later.
Unlike WinRAR, 32-bit self-extracting modules are still provided
as a part of 64-bit installation package.
If you need to install 32-bit versions of WinRAR, you can use one of the packages from a previous release or customize installrar.cmd as installrar_x32_701.cmd
to install the most recent 32-bit version of WinRAR.
Note
If you came from the main page and you're looking for the full package, this is it: v0.10.0.710 ZIP package.
You can look below for the same link.
Tip
Download the incl.WinRAR-x64
package if you're unable to download through the script.
A package for Chinese users has been bundled here.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
Have fun! 🚀 // 'cause why not?
v0.9.0, Update 701
What's new?
- Added special support for
oneclickrar
to uninstall/un-license WinRAR and skip licensing and/or installation.
Note
If you came from the main page and you're looking for the full package, this is it: v0.9.0.701 ZIP package.
You can look below for the same link.
Tip
Download one of the the incl.WinRAR-x32/x64
packages if you're impatient about download times.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
CHANGELOG
- New: Enable extra functionality through substitution of the
i
inclick
with a specific number code, e.g.,onecl0ckrar.cmd
,one-cl3ck-rar.cmd
. oneclickrar
will now assume 64-bit if thearchitecture
is omitted when downloading a specific version of WinRAR.- Add functionality for
oneclickrar
to license WinRAR without running an installation of the software. - Add functionality for
oneclickrar
to run the installation of WinRAR without licensing it afterwards. - Add support to uninstall WinRAR.
- Minor code improvements.
Have fun! 🚀 // 'cause why not?
v0.8.0, Update 701
What's new?
- Support for older 32-bit versions of WinRAR is now available
- New download-only feature that allows you to save installers that were downloaded
Note
If you came from the main page and you're looking for the full package, this is it: v0.8.0.701 ZIP package.
You can look below for the same link.
Tip
Download the incl.WinRAR-x32/x64
if you're impatient about download times.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
CHANGELOG
- Add support for older 32-bit WinRAR installers
- Add new download-only feature which allows for saving of installers downloaded by the script
- Minor bug fixes and code improvements
Have fun! 🚀 // 'cause why not?
v0.7.0, Update 701
What's new?
- 99.9% of bugs have been eradicated;
- a few features such as buttons and links, have been added to the toast notifications;
- and a few other improvements in logic and error handling.
Note
If you came from the main page and you're looking for the full package, this is it: v0.7.0.701 ZIP package. You can look below for the same link.
Tip
Download the incl.WinRAR-x32/x64
if you're impatient about download times.
Show your love and give oneclickwinrar a star! 🌟
The night sky is big enough for both of us ❤️
CHANGELOG
- Fix WinRAR version display error
- Improved script name parsing logic
- Fix annoying bug with variable scope in
licenserar.cmd
- Improve error handling when downloading files that are not available on the server
- Improve toast notifications
- Other code improvements
Have fun! 🚀 // 'cause why not?