Открыть regedit
Перейти к HKEY_CLASSES_ROOT\WinRAR\shell\open\command
Измените (по умолчанию) значение "C:\Program Files\WinRAR\WinRAR.exe" "%1"
в "C:\Program Files\WinRAR\WinRAR.exe" x "%1"
Если у вас также есть ZIP-файлы, связанные с WinRAR, измените соответствующее значение в
HKEY_CLASSES_ROOT\WinRAR.ZIP\shell\open\command
тоже.
(Очевидно, что для 32-битного WinRAR путь будет другим.)
Однако это, вероятно, не создаст подкаталог с именем архива в текущем каталоге во время извлечения. (По крайней мере, это не для меня, учитывая мои настройки WinRAR.) Для этого вам придется изменить значения (по умолчанию), упомянутые выше, на что-то вроде "C:\Extract.bat" "%1"
, а затем создать пакетный файл со следующим содержимым (всего одна строка):
"C:\Program Files\WinRAR\WinRAR.exe" x %1 "%~n1\"
Это должно делать то, что вы хотите, и в качестве бонуса вы можете теперь щелкнуть правой кнопкой мыши и "Открыть" несколько архивов (или выбрать их и нажать Enter), и все они будут автоматически извлечены в отдельные подкаталоги с помощью пакетного файла.
Примечание. Элемент контекстного меню Extract to <archive name\>
динамически генерируется расширением оболочки на основе имени архива, поэтому в реестре нет ключа с таким именем. Для статического ключа было бы просто установить его как действие по умолчанию вместо Open, но здесь это невозможно из-за динамического характера опции.