Beyond Compare 4 便携版 添加右键菜单

一、从安装版中复制所需的 dll 文件

便携版默认不带 Shell Extension 所需的 dll 文件,可以从安装版复制:

例如,从 "C:\Program Files\Beyond Compare 4" 文件夹中找到如下文件,复制到便携版目录:

  • 32位:BCShellEx.dll
  • 64位:BCShellEx64.dll

二、添加 Shell Extension 到注册表

创建一个 bc4_portable_user_shell_extension.reg 文件,内容如下,注意其中的 dll 路径(分隔符需使用双反斜杠):

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}]
@="CirrusShellEx" ; Modify the 64-bit BCShellEx64.dll path here (use double backslash) [HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}\InProcServer32]
@="C:\\Tools\\BCompare\\BCShellEx64.dll"
"ThreadingModel"="Apartment" [HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}]
@="CirrusShellEx" ; Modify the 32-bit BCShellEx.dll path here (use double backslash) [HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}\InProcServer32]
@="C:\\Tools\\BCompare\\BCShellEx.dll"
"ThreadingModel"="Apartment" [HKEY_CURRENT_USER\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\CirrusShellEx]
@="{57FA2D12-D22D-490A-805A-5CB48E84F12A}" [HKEY_CURRENT_USER\SOFTWARE\Classes\Directory\shellex\ContextMenuHandlers\CirrusShellEx]
@="{57FA2D12-D22D-490A-805A-5CB48E84F12A}" [HKEY_CURRENT_USER\SOFTWARE\Classes\Folder\shellex\ContextMenuHandlers\CirrusShellEx]
@="{57FA2D12-D22D-490A-805A-5CB48E84F12A}" [HKEY_CURRENT_USER\SOFTWARE\Classes\lnkfile\shellex\ContextMenuHandlers\CirrusShellEx]
@="{57FA2D12-D22D-490A-805A-5CB48E84F12A}" [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved]
"{57FA2D12-D22D-490A-805A-5CB48E84F12A}"="Beyond Compare 4 Shell Extension"

双击文件运行导入注册表,注销用户后再次登录确认右键菜单已生效。

※以上的注册表是为 Current User 添加右键菜单,无需管理员权限。如果需要为 All Users 添加,将 "HKEY_CURRENT_USER" 改为 "HKEY_LOCAL_MACHINE"

三、删除右键菜单

如删除了Beyond Compare 4 便携版,可使用以下 bc4_remove_shell_extension.reg 文件,删除右键菜单:

Windows Registry Editor Version 5.00

; Remove settings in BC4 key

[-HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare 4\BcShellEx]

; Remove keys under HKEY_CURRENT_USER (current user install)

[-HKEY_CURRENT_USER\Software\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}]
[-HKEY_CURRENT_USER\Software\Wow6432Node\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}] [-HKEY_CURRENT_USER\Software\Classes\*\shellex\ContextMenuHandlers\CirrusShellEx]
[-HKEY_CURRENT_USER\Software\Classes\Directory\shellex\ContextMenuHandlers\CirrusShellEx]
[-HKEY_CURRENT_USER\Software\Classes\Folder\shellex\ContextMenuHandlers\CirrusShellEx]
[-HKEY_CURRENT_USER\Software\Classes\lnkfile\shellex\ContextMenuHandlers\CirrusShellEx] [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved]
"{57FA2D12-D22D-490A-805A-5CB48E84F12A}"=- ; Remove keys under HKEY_LOCAL_MACHINE (install for all users) [-HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}]
[-HKEY_LOCAL_MACHINE\Software\Wow6432Node\Classes\CLSID\{57FA2D12-D22D-490A-805A-5CB48E84F12A}] [-HKEY_LOCAL_MACHINE\Software\Classes\*\shellex\ContextMenuHandlers\CirrusShellEx]
[-HKEY_LOCAL_MACHINE\Software\Classes\Directory\shellex\ContextMenuHandlers\CirrusShellEx]
[-HKEY_LOCAL_MACHINE\Software\Classes\Folder\shellex\ContextMenuHandlers\CirrusShellEx]
[-HKEY_LOCAL_MACHINE\Software\Classes\lnkfile\shellex\ContextMenuHandlers\CirrusShellEx] [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved]
"{57FA2D12-D22D-490A-805A-5CB48E84F12A}"=-

※以上的注册表是为 Current User 以及 All Users 添加的右键菜单均删除。若当前用户无需管理员权限,可将后半段的 "HKEY_LOCAL_MACHINE" 的部分删除后再导入 .reg 文件。

(完)

Beyond Compare 4 便携版 添加右键菜单的更多相关文章

  1. Beyond Compare 3添加右键菜单

    目前是在Beyond Compare 3.1.9版本上试验可行,其他版本上尚未测试. 添加右键菜单步骤: 1.新建为.bat后缀的文本,将下面“添加右键菜单批处理”复制到此文本中. 2.将批处理移动到 ...

  2. pyqt5-为QListWidget添加右键菜单

    如何在pyqt5下为QListWidget添加右键菜单? 能百度到的均是pyqt4下的,有些貌似并不好用. 在尝试了很多方法后,下面贴出可用的方法: from PyQt4 import QtCore, ...

  3. 添加右键菜单命令 在此处打开命令窗口(E)(带图标)

    @color 0A @title 添加右键菜单命令 在此处打开命令窗口(^&E)(带图标) by wjshan0808 @echo off reg add HKCR\Directory\Bac ...

  4. 仅在TabControl中的Tab中添加右键菜单

    若想实现仅在TabControl中的Tab中添加右键菜单,可在XAML中通过使用样式得到: <TabControl> <TabControl.ItemContainerStyle&g ...

  5. [cb] Unity Editor 添加右键菜单

    需求 为Unity的Editor窗口添加右键菜单 实现代码 // This example shows how to create a context menu inside a custom Edi ...

  6. Arcengine 二次开发添加右键菜单

    最近在搞arcengine 二次开发,遇到了好多问题,也通过网上查资料试着慢慢解决了,把解决的步骤记录下来,有需要帮助的可以看一下,也欢迎各位来批评指正. 想给自己的map application在图 ...

  7. 给tkinter文本框添加右键菜单

    给tkinter文本框添加右键菜单 需求:直接右键点击使用tkinter创建的文本框是不会弹出菜单的.我们需要实现右键点击tkinter框架下的Entry对象.Text对象后弹出右键菜单可复制.粘贴和 ...

  8. DevExpress使用教程:XtraGridControl动态添加右键菜单

    在使用 GridControl 的时候经常需要添加右键菜单.一般的做法是自己创建菜单项,然后注册GridView的Mouse-Click事件,然后Show出定义好的菜单.但是涉及到一些单击事件会收到编 ...

  9. 『实践』百度地图给map添加右键菜单(判断是否为marker)

      var map; var s;//经度 var w;//纬度 $(document).ready(function(){ $(".mune").load("jsp/c ...

  10. 『实践』百度地图给多个marker添加右键菜单(删除、更新)

    js: $.getJSON("./GetStationPlaceServlet",function(json){ for(var i=0;i<json.length;i++) ...

随机推荐

  1. Atcoder ABC390E Vitamin Balance 题解 [ 绿 ] [ 背包 ] [ 二分 ]

    Vitamin Balance:比较板的背包. 思路 一个 dp 数组里同时存三种食物的最大维他命显然不可行,因为一种食物维他命最多不代表其他维他命也同样多,而最终的价值取决于维他命最少的那个,所以这 ...

  2. 微信小程序实现分类菜单激活状态随列表滚动而自动切换效果详解

    这篇文章主要介绍了微信小程序分类菜单激活状态跟随列表滚动自动切换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧 目录 view结构 ...

  3. Android ADB 使用笔记

    ADB 工作原理 当启动某个adb客户端时,该客户端会先检查是否有adb服务器正在运行,如果没有则启动服务器进程.服务器会在启动后与本地TCP端口 5037 绑定,并监听adb客户端 发出的命令. 服 ...

  4. 解决 Docker 容器镜像拉取难题:全面指南

    一.引言 在使用 Docker 容器的过程中,经常会遇到镜像拉取慢甚至无法下载的问题,这给开发和部署工作带来了不小的困扰.本文将深入探讨这一问题的原因,并提供多种有效的解决方案. 二.问题原因分析 网 ...

  5. 机器学习 | 强化学习(3) | 无模型预测(Model-Free Prediction)

    无模型预测(Model-Free Prediction) 无模型预测概论 上一节课<通过DP求解>可以解决一个已知的马尔科夫决策过程 本节课 实践无模型预测 解决或者估计一个未知马尔科夫决 ...

  6. ABC393C题解

    大概评级:橙. 送分题. 题意就是让你统计有多少条边是重边或自环. 设 \(u_i\) 表示第 \(i\) 条边的左端点,\(v_i\) 表示第 \(i\) 条边的右端点. 那么如果 \(u_i = ...

  7. 探秘Transformer系列之(11)--- 掩码

    探秘Transformer系列之(11)--- 掩码 目录 探秘Transformer系列之(11)--- 掩码 0x00 概述 0x01 需求 1.1 避免偏差 实际情况 问题所在 解决方案 1.2 ...

  8. Mermaid Live Editor 如何调整方向

    在 Mermaid Live Editor 中,默认情况下,流程图和序列图等都是按照从左到右的方向来布局的.但是,如果你想要创建一个从上到下(纵向)布局的图形,你可以使用 TD(Top-Down,即从 ...

  9. DB读写分离情况下,如何解决缓存和数据库不一致性问题?

    前言 在读写分离的情况下,缓存和数据库数据不一致怎么解决? 请看这一篇如何更新缓存保证缓存和数据库双写一致性? 如何解决DB数据库的数据不一致问题? 请看这一篇怎么解决DB读写分离,导致数据不一致问题 ...

  10. NumPy学习8

    今天学习了NumPy统计函数 16,NumPy统计函数 numpy_test8.py : import numpy as np ''' 16,NumPy统计函数 NumPy 提供了许多统计功能的函数, ...