3

*.zip ファイルのコンテキスト メニューに追加しようとしています。必要なパラメーターを使用して Python スクリプトを起動するには。

次のキーを登録するために追加しました:

[HKEY_CLASSES_ROOT\WinZip\shell\SSSeracher] "MUIVerb"="SSSearcher Script" "SubCommands"="SSSearcher.Rule1;SSSearcher.Rule2;SSSearcher.Rule3;SSSearcher.Custom;SSSearcher.Config"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Rule1] @="Rule #1"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Rule1\command] @="C:\\APPS\\python\\Scripts\\sssearcher.py \"%1\" \"1\""
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Rule2] @="Rule #2"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Rule2\command] @="C:\\APPS\\python\\Scripts\\sssearcher.py \"%1\" \"2\""
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Rule3] @="Rule #3"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Rule3\command] @="C:\\APPS\\python\\Scripts\\sssearcher.py \"%1\" \"3\""
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Custom] @="Custom rule"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Custom\command] @="C:\\APPS\\python\\Scripts\\sssearcher.py \"%1\" \"4\""
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Custom] @="Custom rule"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Custom\command] @="C:\\APPS\\python\\Scripts\\sssearcher.py \"%1\" \"4\""
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Config] @="Config File"
[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\SSSearcher.Config\command] @="vim C:\\APPS\\python\\Scripts\\sssearcher.pyc"

それらをクリックして表示されるメニューは、まったく何もしません。

私はこのチュートリアルに従っています: http://msdn.microsoft.com/en-us/library/windows/desktop/hh127467%28v=vs.85%29.aspx

欠けているものがありますが、残念ながら答えが見つかりません。それを手伝ってくれませんか?

4

1 に答える 1

9

次の手順を実行したところ、動作しているように見えます。

1) まず、 の.zip下にあるキーを見つけますHKEY_CLASSES_ROOT

2) それを選択し、デフォルトを見てください。私の場合、デフォルトはCompressedFolder次のとおりです。

ここに画像の説明を入力

3) 次に、CompressedFolder\shell以下にも含まれている (または .zip のデフォルトの下にあったもの) に移動しHKEY_CLASSES_ROOTます。

ここに画像の説明を入力

4) シェルを右クリックして、新しいキーを追加します。私の場合は、という名前のキーを追加しましたMyCommand。というサブキーをこのキーに追加しますcommandMyCommandコンテキスト メニューに表示されるコマンドの名前になります。

ここに画像の説明を入力

5) 次に、 のサブキーの(Deafult)エントリの値を編集し、実行したい操作を追加します。私の場合、ファイルの詳細を教えてくれるpythonファイルを開きたい:commandmycommand

これはpythonスクリプトです:

import os
import sys

def main():
    st = os.stat(sys.argv[1])
    print st
    raw_input()

if __name__ == '__main__':
    main()

そして、それは C:\info.py にあります

そして、これは私がデフォルトに追加したエントリです:

python C:\\info.py %1

ここに画像の説明を入力

以上で、zip ファイルを右クリックすると、追加したコマンドが表示されるはずです。

ここに画像の説明を入力

クリックすると次のようになります。

ここに画像の説明を入力

これがあなたの目的であることを願っています。さらにコマンドを追加したい場合は、shellで行ったように、キーの下にサブキーを追加しMyCommandます。

更新 - カスケード メニュー

a) カスケード メニューを追加するには、上記の手順 3 で説明したキーに移動します。私の場合、これはCompressedFolder\shellHKEY_CLASSES_ROOT の下にあります。ここで、選択した名前のキーを追加します。私の場合はCascadeMenu. このキーに 2 つのエントリを追加します。

  • MUIVerb- これは、カスケード メニューに表示される名前です。私の場合、私は使用しましたMyCascadeMenu
  • SubCommands- これはセミコロンで区切られたコマンドのリストです。コマンドに好きな名前を付けます。私の場合はpython.info. 「|」を使用する たとえば、セパレータが必要な場合はコマンド間command1;|;command2

ここに画像の説明を入力

b) 次に、このコマンドが実際に何をするかをウィンドウに伝える必要があります。案内する:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\Shell

ここで、コマンドの名前でキーを追加します。私の場合、キーはpython.info. キーのデフォルト値を、コンテキスト メニューに表示する名前に設定します。私の場合、私は使用しました"File Info"

ここに画像の説明を入力

c) という名前のサブキーをコマンドに追加しますcommand。このコマンドのデフォルト エントリを、実行するコマンドに変更します。私の場合、私はそれを設定しましたpython C:\\info.py %1

ここに画像の説明を入力

d) これで完了です。.zip ファイルを右クリックして、新しく作成したコンテキスト メニューを表示します。

ここに画像の説明を入力

于 2013-08-01T11:38:36.810 に答える