Як додати пункт контекстного меню Windows Explorer із користувацькою функціональністю?


13

Мені хотілося б мати можливість клацання правою кнопкою миші на файлі в Провіднику Windows, потім підменю 7-Zip, а потім замість чогось типу " Додати в архів ... ", я хотів би, " Додати до<filename>-<today's date>.7z '

Малюнок вартує тисячі слів:

Меню вмісту провідника

Це було б налаштування, яке зараз не пропонує 7-Zip (наскільки мені відомо).

Відповіді:


10

7-zip є відкритим кодом, тому я гадаю, що ви могли реалізувати цю функцію самостійно (tee hee) або подати клопотання / заплатити основним розробникам зробити це за вас. Замість цього:

Це неможливо зробити, налаштувавши параметри 7-zip, але ви можете це зробити, створивши новий пункт контекстного меню. Текст не буде динамічним, як ваш макет, але результати будуть однаковими.

В основному, вам потрібно буде створити пакетний сценарій, який запускає 7-zip з правильними параметрами, щоб взяти вказаний вами файл і додати його до архіву, подаючи сьогоднішню дату як ім'я файлу.

Цей сценарій зробить це (на основі сценарію звідси ). Вставте це в новий текстовий файл під назвою 7ztoday.bat:

@echo off
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET CDATE=%%B
FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET mm=%%B
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('echo %CDATE%') DO SET dd=%%B
FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('echo %CDATE%') DO SET yyyy=%%B

"%programfiles%\7-zip\7z.exe" a %mm%%dd%%yyyy%.7z %1

Потім за допомогою утиліти, такої як редактор програм за замовчуванням , ми можемо додати новий пункт контекстного меню для файлів, які вказують на цей пакетний сценарій. Для зручності я експортував цю зміну як файл reg, тому ви можете просто скопіювати її в новий текстовий файл, який закінчується .regта двічі клацнути, щоб об'єднатись у реєстр.

Windows Registry Editor Version 5.00

; Created with Default Programs Editor 
; http://defaultprogramseditor.com/

; Add Verb
[HKEY_CURRENT_USER\Software\Classes\*\shell\AddToTodaysArchive_verb_key]
@="Add file to today's archive"
[HKEY_CURRENT_USER\Software\Classes\*\shell\AddToTodaysArchive_verb_key\command]
@="\"C:\\Users\\Public\\7ztoday.bat\" \"%1\""

Щодо налаштувань 7-zip:

Це конкретне підменю реєструється 7-zip, і ви можете налаштувати те, що з’являється у підменю з параметрів програми, відкривши 7-Zip File Manager і перейшовши до Tools-> Options-> Plugins, виберіть "7-Zip", потім натисніть Options. У списку у цьому вікні є всі вбудовані параметри, доступні для цього вторинного списку у контекстному меню.

введіть тут опис зображення


Я раніше цим користувався. Однак я хотів би додати спеціальний пункт меню, який автоматично генерує ім’я файлу архіву та додає сьогоднішню дату наприкінці.
Умбер Ферруле

Оновлена ​​відповідь із роботою навколо, яка додає новий пункт контекстного меню верхнього рівня.
Фактор Містик
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.