カスタム機能を備えたWindowsエクスプローラーのコンテキストメニュー項目を追加する方法


13

Windowsエクスプローラーでファイルを右クリックし、7-Zipサブメニューを右クリックして、「アーカイブに追加...」、「追加」などの代わりにに<filename>-<today's date>.7z "

写真は千の言葉に値する:

Explorerコンテンツメニュー

これは、現在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

次に、Default Programs Editorなどのユーティリティを使用して、このバッチスクリプトを指すファイルの新しいコンテキストメニュー項目を追加できます。便宜上、この変更を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ファイルマネージャーを開き、Tools-> Options-> Pluginsに移動して[7-Zip]を選択し、クリックしますOptions。そのウィンドウのリストには、コンテキストメニューのそのセカンダリリストで使用可能なすべての組み込みオプションがあります。

ここに画像の説明を入力してください


以前にこれを使用しました。ただし、アーカイブファイル名を自動生成し、最後に今日の日付を追加するカスタムメニュー項目を追加したいと思います。
アンバーフェルール

新しいトップレベルのコンテキストメニュー項目を追加する回避策で回答を更新しました。
ファクターミスティック
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.