今天心血来潮把几个自己常用的工具定制到了系统的右键菜单。包括notepad++,7zip,还有复制文件全路径和文件夹路径。下面简单介绍一下步骤。
1. Windows系统右键菜单对应的注册表位置
Windows系统的右键菜单对应着如下的注册表位置。
1)所有文件的右键菜单:
2)所有目录的右键菜单:
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\*\shell\Notepad++] @="Notepad++" "Icon"="...\\notepad++ico.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\*\shell\Notepad++\command] @="\"...\\notepad++.exe\" \"%1\""
[HKEY_CLASSES_ROOT\*\shell\7zip] @="7zip" "Icon"="...\\7zipico.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\*\shell\7zip\Command] @="\"...\\7z.exe\" a \"%1\".zip \"%1\""
[HKEY_CLASSES_ROOT\Directory\shell\7zip] @="7zip" "Icon"="...\\7zipico.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\Directory\shell\7zip\command] @="\"...\\7z.exe\" a \"%1\".zip \"%1\""
[HKEY_CLASSES_ROOT\*\shell\CopyFileFullName] @="Copy File FullName" "Icon"="...\\fullpath.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\*\shell\CopyFileFullName\Command] @="...\\copyfullname.bat \"%1\""
[HKEY_CLASSES_ROOT\*\shell\CopyFileName] @="Copy File Name" "Icon"="...\\name.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\*\shell\CopyFileName\Command] @="...\\copyname.bat \"%1\""
[HKEY_CLASSES_ROOT\*\shell\CopyFolderName] @="Copy Folder Name" "Icon"="...\\folder.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\*\shell\CopyFolderName\Command] @="...\\copyfolder.bat \"%1\""
[HKEY_CLASSES_ROOT\Directory\shell\CopyFolderName] @="Copy Folder Name" "Icon"="...\\folder.ico" "Position"="Middle"
[HKEY_CLASSES_ROOT\Directory\shell\CopyFolderName\command] @="...\\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\*\shell\Notepad++]
[-HKEY_CLASSES_ROOT\*\shell\7zip]
[-HKEY_CLASSES_ROOT\Directory\shell\7zip]
[-HKEY_CLASSES_ROOT\*\shell\CopyFileFullName]
[-HKEY_CLASSES_ROOT\*\shell\CopyFileName]
[-HKEY_CLASSES_ROOT\*\shell\CopyFolderName]
[-HKEY_CLASSES_ROOT\Directory\shell\CopyFolderName]
|
3)简单说明
其实就是把当前的文件或者文件夹作为参数(%1)传给你需要的应用。各个应用的命令行参数可以自己去查帮助。比如我的7zip使用的是压缩命令,命令行参数就是
把当前文件或者文件夹放入名为文件(夹)名加上.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 |
%~1 |
删除引号(“),扩充 %1 |
%~f1 |
将 %1 扩充到一个完全合格的路径名 |
%~d1 |
仅将 %1 扩充到一个驱动器号 |
%~p1 |
仅将 %1 扩充到一个路径 |
%~n1 |
仅将 %1 扩充到一个文件名 |
%~x1 |
仅将 %1 扩充到一个文件扩展名 |
%~s1 |
扩充的路径指含有短名 |
%~a1 |
将 %1 扩充到文件属性 |
%~t1 |
将 %1 扩充到文件的日期/时间 |
%~z1 |
将 %1 扩充到文件的大小 |
3. 效果