两个文件,找到它们的不同之处—这个看似简单的问题,其实非常麻烦。下面我们就为EmEditor添加文件对比的功能吧。
第一步:下载http://www.newhua.com/cfan/200417/fiotools.zip,将其解压缩,然后把其中的“FioTools.dll”复制到“C:\Windows\System32”文件夹下,接着在“开始→运行”中输入“regsvr32 FioTools.dll”(不含引号)。
第二步:下载http://www.newhua.com/cfan/200417/df136.lzh,将其解压缩,然后把其中的“DF.EXE”复制到“D:\DF”下,注意该目录可以自定义,但目录名中不要带空格。
第三步:打开EmEdtior,选择菜单中的“宏→自定义”,在弹出“宏的自定义”窗口中选择“新建”,然后选择好保存位置,并将该宏命名为“对比”(“文件类型”为“VBScript脚本”),这时回到“宏的自定义”窗口,点击“编辑”按钮,打开文件“对比.vbee”,然后输入如下内容。
Set Dic = CreateObject("Scripting.Dictionary")
Set Fio = CreateObject("FioTools.EmEditor")
Set WshShell = CreateObject( "WScript.Shell" )
For Each Wnd In Fio.GetEmHandles
Dic.Add Wnd, Fio.GetFilePath(Wnd)
Next
FileNames = Join(Dic.Items)
WshShell.Run "D:\DF\DF.EXE" & " " & FileNames
Set Fio = Nothing
Set Dic = Nothing
这里需要注意,“WshShell.Run "D:\DF\DF.EXE" & " " & FileNames ”一行中的“D:\DF\DF.EXE”需要根据DF.EXE的实际保存路径进行修改(见图1)。
第四步:如果需要对比两个文件时,只要用EmEditor打开这两个文件,然后选择菜单里的“宏→对比.vbee”,就可以打开DF软件进行对比了(见图2)。
小提示
任意文件的对比
EmEditor很明显是专为对比文本文件所设计的,那么对比其他文件时应该怎么处理呢?如果你经常使用Total Commander,则可先选中需要对比的两个文件,然后选择菜单中的“文件→比较文件内容”即可。
其他文件对比的方法,可参见本刊2004年第16期实用软件栏目的文章