今天心血来潮把几个自己常用的工具定制到了系统的右键菜单。包括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使用的是压缩命令,命令行参数就是

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. 效果

如何定制Windows系统右键菜单的更多相关文章

  1. 怎样在注冊表禁用或打开windows系统右键菜单

    以下是禁用右键方法: 在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下  在右边的窗体中新 ...

  2. 如何清理多余的Windows桌面右键菜单

    删除多余的发送到选项 Win7使用一段时间后,我们可能会装很多软件,这时候右键菜单可能会变得很长,特别是“发送到(Send to)”里面的选项,有时候我们卸载软件之后在右键发送到菜单里还会有残存的选项 ...

  3. 添加删除系统右键菜单(就是上下文菜单,也就是Context Menu)中的一些选项

    随着电脑安装的东西越来越多,右侧菜单也原来越长,很不方面.所以打算清理一下 我删除的大约以下几个,友好一点的都可以配置.当然也可以通过注册表直接删除. 特:注册表备份,即导入导出,避免一失足成千古恨. ...

  4. c# 添加指定扩展名的系统右键菜单(Windows11以前)

    在上篇文章c# 添加系统右键菜单(Windows11以前)中我们说了怎么在文件夹上增加一个菜单项,但是我们可能还需要给某个单独的扩展名添加右键菜单. 这里我们不用常见的扩展名来做,我们新做一个.jx的 ...

  5. 添加系统右键菜单项 管理员取得所有权(W)(带盾牌)

    @color 0A @title 添加系统右键菜单项 管理员取得所有权(^&W)(带盾牌) by wjshan0808 @echo off echo * >nul reg add HKC ...

  6. 系统右键菜单添加剪贴板清空项(隐藏DOS窗口)

    @color 0A @title 系统右键菜单添加剪贴板清空项(隐藏DOS窗口) by wjshan0808 @echo off echo 请输入右键菜单名称 set /p name= ::创建本机A ...

  7. 修复sublime text系统右键菜单

    修复sublime text系统右键菜单 安装完Sublime Text2后,拿掉电脑里面的备用硬盘,导致每次使用Open with Sublime Text2的时候,都会出错,打开注册表,找到 HK ...

  8. 用Qt写软件系列四:定制个性化系统托盘菜单

    导读 一款流行的软件,往往会在功能渐趋完善的时候,通过改善交互界面来提高用户体验.毕竟,就算再牛逼的产品,躲藏在糟糕的用户界面之后总会让用户心生不满.界面设计需综合考虑审美学.心理学.设计学等多因素, ...

  9. 手机浏览器中屏蔽img的系统右键菜单context menu

    我们知道通过oncontextmenu事件可以屏蔽浏览器右键菜单 $('img').on("contextmenu",function(E){E.preventDefault(); ...

随机推荐

  1. Java中实现对象的比较:Comparable接口和Comparator接口

    在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那么简单,它们往往包含有许多的属性,我们一般都是根据这些属性对自定义对象进行比较的.所以Java中 ...

  2. 不使用ASP.NET服务器端控件(包括form表单不加runat="server")来触发.cs里的事件(方法),(适用于有代码洁癖者)。

    很多时候,我们使用服务器端控件写出的代码,会给我们生成一些很多我们看不懂的代码(初学者),但是有时候我们并不需要这些代码(业务需求不同),对于生成的一些代码感到多余.所以我就开始想,有没有一种可能:不 ...

  3. Jquery 获取日期date()对象

    获取JavaScript 的时间使用内置的Date函数完成 var mydate = new Date(); mydate.getYear(); //获取当前年份(2位) mydate.getFull ...

  4. Winform使用DevExpress的WaitDialogForm画面

    使用了DevExpress的WaitDialogForm 在应用程序加载开始时新建一个线程,并将loading画面show起来,在应用程序画面弹出前将该线程终止. 代码: private DevExp ...

  5. springMVC整合jedis+redis,以注解形式使用

    前两天写过 springMVC+memcached 的整合,我从这个基础上改造一下,把redis和springmvc整合到一起. 和memcached一样,redis也有java专用的客户端,官网推荐 ...

  6. 在Lufylegend中如何设置bitmap或者sprite的缩放和旋转中心

    最近两天有个lufylegend游戏引擎群的群友需要做一个项目,其中要解决的需求是:获取照相机拍摄的图片,根据图片的EXIF信息让图片显示为“正常”情况,并且需要给图片添加一些事件侦听.何为正常呢?就 ...

  7. JQuery jsonp使用小记

    在一个不支持PHP的主机上,需要对某些页面做访问统计.我的方案是在静态的HTML页面上,用JSONP向能够执行PHP的主机进行跨域请求,从而使用PHP解决这个访问量统计问题. 在服务器端,PHP页面返 ...

  8. Python Tutorial 学习(六)--Modules

    6. Modules 当你退出Python的shell模式然后又重新进入的时候,之前定义的变量,函数等都会没有了. 因此, 推荐的做法是将这些东西写入文件,并在适当的时候调用获取他们. 这就是为人所知 ...

  9. Library:python-memcached on Windows

    1 install memcached 1.4.4 Windows 32-bit  2 cd into the base file and type memcached.exe -d install ...

  10. [BZOJ 2007] [Noi2010] 海拔 【平面图最小割(对偶图最短路)】

    题目链接:BZOJ - 2007 题目分析 首先,左上角的高度是 0 ,右下角的高度是 1.那么所有点的高度一定要在 0 与 1 之间.然而选取 [0, 1] 的任何一个实数,都可以用整数 0 或 1 ...