Answers:
听起来您需要diff-ext!
此外壳程序扩展名(diff-ext)使得可以在同一目录中启动2个或3个文件(取决于工具)的文件比较工具,或“保存”文件以供以后比较。它充当比较工具的外部最近使用(MRU)文件列表。
我将它与KDiff3一起使用,但可以在其页面上使用许多其他差异工具。
Kdiff3
=> Compare
),因此,如果您只需要快速简便的内容,那就足够了。
这是我的解决方案,添加一个右键单击上下文菜单项以运行自定义命令(如调用Meld)并比较两个文件。
背景信息 简单的上下文菜单项可以轻松地添加到Windows注册(regedit)中:手动或通过创建.reg文件(请参见下面的示例)。
问题在于该命令将针对您选择的每个文件运行。有以下三种解决方案:
singleinstance.exe
从上下文菜单句柄(简单)。该程序为您执行选项2。它从调用的不同时间收集参数,然后将其传递给所需的命令。可以使用超时选项来帮助收集要收集的呼叫。点击链接获取更多信息。第1步从上下文菜单处理程序中下载singleinstance.exe (并感谢与我无关的作者)
步骤2(用于文件和文件夹比较):创建具有以下内容的扩展名“ .reg”的文件(例如,带有图标的融合示例):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\DiffIt_Files]
@="Diff it!"
"Icon"="C:\\Config\\look\\Icons\\Meld.ico"
[HKEY_CLASSES_ROOT\*\shell\DiffIt_Files\command]
@="\"c:\\Bin\\singleinstance.exe\" \"%1\" \"C:\\Program Files (x86)\\Meld\\Meld.exe\" $files --si-timeout 400"
[HKEY_CLASSES_ROOT\Folder\shell\DiffIt_Folders]
@="Diff It!"
"Icon"="C:\\Config\\look\\Icons\\Meld.ico"
[HKEY_CLASSES_ROOT\Folder\shell\DiffIt_Folders\command]
@="\"c:\\Bin\\singleinstance.exe\" \"%1\" \"C:\\Program Files (x86)\\Meld\\Meld.exe\" $files --si-timeout 400"
reg文件创建一个上下文菜单项,标记为“ Diff It!”。所有文件(*
)和文件夹(Folder
)。Icon
如果您不需要图标,可以删除包含的行。
调整程序的路径singleinstance.exe
和命令的运行(在此处C:\Program Files (x86)\Meld\Meld.exe
。注意退格和引号的转义)
步骤3运行.reg
文件。如果您是管理员,则双击它可能会起作用。否则,请在您的文件夹中打开一个管理命令提示符(在资源管理器中:“文件”>“打开命令”>“以管理员身份或”打开命令Alt-F-M-A
)。只需键入.reg
文件名即可将其添加到注册表中。
而已。
(卸载)您可以在注册表中手动删除密钥,也可以创建.reg
具有以下内容的文件:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\*\shell\DiffIt_Files]
[-HKEY_CLASSES_ROOT\Folder\shell\DiffIt_Folders]
替代方法使用软件添加-编辑-删除上下文菜单项,例如ContextEdit(但不能轻松添加图标)。在这种情况下,您不需要转义斜杠和引号,因此命令将如下所示:
"c:\Bin\singleinstance.exe "%1" "C:\Program Files (x86)\Meld\Meld.exe" $files --si-timeout 400
singleinstance.exe
。也许这不是与Windows 10兼容
如果在安装过程中启用Shell集成,则Compare和WinMerge以外的功能也可以执行此操作。
您可以使用custom命令创建一个批处理文件,然后在中添加一个快捷方式shell:sendto
。另外,这还避免了更改注册表。
受此堆栈溢出答案的启发,例如:
1a。使用以下命令创建一个新文件:
@echo off
setlocal
start "Compare files" /B /MIN "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\devenv.exe" /diff %2 %1 First:'%2' Second:'%1'
1b。更改启动命令,例如,适当地更改比较工具的路径和后续命令行参数。
将批处理文件保存到永久目录,例如C:\Users\You\Compare With My Tool.cmd
。
在中创建Compare With My Tool.cmd
文件的快捷方式shell:sendto
。快捷方式的名称就是您将在“发送到”上下文菜单上看到的名称。出现在外壳中的图标是快捷方式的图标,您可以使用文件属性菜单进行更改。
选择要比较的两个文件,单击鼠标右键,然后选择“发送到”>“与我的工具比较”(或您命名为快捷方式的任何名称)