zoukankan      html  css  js  c++  java
  • 如何定制Windows系统右键菜单

    今天心血来潮把几个自己常用的工具定制到了系统的右键菜单。包括notepad++,7zip,还有复制文件全路径和文件夹路径。下面简单介绍一下步骤。

    1. Windows系统右键菜单对应的注册表位置

    Windows系统的右键菜单对应着如下的注册表位置。

    1)所有文件的右键菜单:

    image

    2)所有目录的右键菜单:

    image

    2.添加自己定制的右键菜单

    1)如下的代码存为.reg文件,双击就能把注册表键值导入到注册表中。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT*shellNotepad++]
    @="Notepad++"
    "Icon"="...\notepad++ico.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOT*shellNotepad++command]
    @=""...\notepad++.exe" "%1""
    
    
    [HKEY_CLASSES_ROOT*shell7zip]
    @="7zip"
    "Icon"="...\7zipico.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOT*shell7zipCommand]
    @=""...\7z.exe" a "%1".zip "%1""
    
    [HKEY_CLASSES_ROOTDirectoryshell7zip]
    @="7zip"
    "Icon"="...\7zipico.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOTDirectoryshell7zipcommand]
    @=""...\7z.exe" a "%1".zip "%1""
    
    
    [HKEY_CLASSES_ROOT*shellCopyFileFullName]
    @="Copy File FullName"
    "Icon"="...\fullpath.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOT*shellCopyFileFullNameCommand]
    @="...\copyfullname.bat "%1""
    
    
    [HKEY_CLASSES_ROOT*shellCopyFileName]
    @="Copy File Name"
    "Icon"="...\name.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOT*shellCopyFileNameCommand]
    @="...\copyname.bat "%1""
    
    
    [HKEY_CLASSES_ROOT*shellCopyFolderName]
    @="Copy Folder Name"
    "Icon"="...\folder.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOT*shellCopyFolderNameCommand]
    @="...\copyfolder.bat "%1""
    
    
    [HKEY_CLASSES_ROOTDirectoryshellCopyFolderName]
    @="Copy Folder Name"
    "Icon"="...\folder.ico"
    "Position"="Middle"
    
    [HKEY_CLASSES_ROOTDirectoryshellCopyFolderNamecommand]
    @="...\copyname.bat "%1""

    2)如下的代码是删除上面添加这些注册表键值。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    Windows Registry Editor Version 5.00
    
    [-HKEY_CLASSES_ROOT*shellNotepad++]
    
    [-HKEY_CLASSES_ROOT*shell7zip]
    
    [-HKEY_CLASSES_ROOTDirectoryshell7zip]
    
    [-HKEY_CLASSES_ROOT*shellCopyFileFullName]
    
    [-HKEY_CLASSES_ROOT*shellCopyFileName]
    
    [-HKEY_CLASSES_ROOT*shellCopyFolderName]
    
    [-HKEY_CLASSES_ROOTDirectoryshellCopyFolderName]

    3)简单说明

    其实就是把当前的文件或者文件夹作为参数(%1)传给你需要的应用。各个应用的命令行参数可以自己去查帮助。比如我的7zip使用的是压缩命令,命令行参数就是

    1
    7z.exe a “%1".zip "%1"

    把当前文件或者文件夹放入名为文件(夹)名加上.zip的压缩包中。

    关于复制文件名和文件夹名的命令,我是用了如下的bat文件,分别存在了copyfullname.bat

    1
    2
    @echo off
    echo %~1 | clip

    copyname.bat

    1
    2
    @echo off
    echo %~nx1 | clip

    copyfolder.bat三个bat中。

    1
    2
    @echo off
    echo %~dp1 | clip

    其实就是把当前参数放进了剪切板里。

    下面列举了关于%1的一些常见用法。

            %~1             - 删除引号("),扩充 %1
            %~f1            - 将 %1 扩充到一个完全合格的路径名
            %~d1            - 仅将 %1 扩充到一个驱动器号
            %~p1            - 仅将 %1 扩充到一个路径
            %~n1            - 仅将 %1 扩充到一个文件名
            %~x1            - 仅将 %1 扩充到一个文件扩展名
            %~s1            - 扩充的路径指含有短名
            %~a1            - 将 %1 扩充到文件属性
            %~t1            - 将 %1 扩充到文件的日期/时间
            %~z1            - 将 %1 扩充到文件的大小

    3. 效果

    image

  • 相关阅读:
    sabaki and leelazero
    apply current folder view to all folders
    string operation in powershell
    wirte function in powershell
    add environment path to powershell
    Module in powershell
    sql prompt
    vmware中鼠标在部分区域不能使用
    调整多个控件的dock的顺序
    行为型模型 策略模式
  • 原文地址:https://www.cnblogs.com/fresky/p/3161329.html
Copyright © 2011-2022 走看看