比较两个文件。你能直接用该内联函数或明确地发送 EE_COMPARE 消息。
Editor_Compare( HWND hwnd, UINT nFlags, LPCWSTR pszDocument1, LPCWSTR pszDocument2, LPCWSTR pszResultFileName );
hwnd
指定 EmEditor 视图或框架的窗口句柄。
nFlags
指定以下值的组合。
COMPARE_GENERATE_REPORT |
生成一个报告文件。必须在 strResultFileName 中指定路径名称。 |
COMPARE_IGNORE_CASE |
忽略大小写。 |
COMPARE_IGNORE_COMMENT |
忽略配置标记为注释的文本。 |
COMPARE_IGNORE_CRLF |
忽略换行符的差异。 |
COMPARE_IGNORE_EMBEDDED_SPACE |
忽略一行中第一个和最后一个非空格字符之间的空格。 |
COMPARE_IGNORE_ENCODING |
忽略编码差异。 |
COMPARE_IGNORE_LEAD_SPACE |
忽略一行中第一个非空格字符之前的空格。 |
COMPARE_IGNORE_TRAIL_SPACE |
忽略一行中最后一个非空格字符后的空格。 |
COMPARE_OPEN_REPORT |
打开报告文件。必须指定 COMPARE_GENERATE_REPORT。 |
COMPARE_REPORT_3_COL |
使用 3 列格式输出报告。 |
COMPARE_REPORT_DIFF_ONLY |
仅报告不相同的行。 |
COMPARE_QUALITY_1 |
搜索附近行的最快的方法。 |
COMPARE_QUALITY_2 |
较快的方法。 |
COMPARE_QUALITY_3 |
中等速度。 |
COMPARE_QUALITY_4 |
较精确的方法。 |
COMPARE_QUALITY_5 |
搜索整个文件最精确的方法(有一定的限制)。 |
COMPARE_QUIET |
不显示任何输出消息。 |
COMPARE_RESET |
重置比较或同步滚动模式并清除比较结果。 |
COMPARE_RESET_AFTER |
重置比较或同步滚动模式并在比较和报告生成后清除比较结果。另外,必须被指定 COMPARE_GENERATE_REPORT。 |
COMPARE_RESTORE_POS |
完成后恢复窗口位置。 |
COMPARE_SPLIT_VERT |
垂直分割窗口以显示文档。 |
COMPARE_SWITCH_NO_WRAP |
切换到不换行。 |
COMPARE_SYNC_CARET |
同步光标位置。 |
COMPARE_SYNC_SCROLL_HORZ |
同步水平滚动。 |
COMPARE_SYNC_SCROLL_ONLY |
显示比较文档但不用高亮显示差异。 |
COMPARE_SYNC_SCROLL_VERT |
同步垂直滚动。 |
COMPARE_TILE_HORZ |
水平平铺文件。 |
COMPARE_TILE_VERT |
垂直平铺文件。 |
pszDocument1
指定用于标识第一个文档的字符串。该值可以是文件名,带完整路径的文件名或一个冒号 (:) 后跟当前组中的文档索引。 例如,"filename.csv","C:\data\filename.csv",或 ":2"。
pszDocument2
指定用于标识第二个文档的字符串。该值的格式与 strDocument1 相同。
pszResultFileName
如果在 nFlags 参数中指定了 COMPARE_GENERATE_REPORT,EmEditor 会用指定的文件名保存比较报告。
如果发生错误,返回值为负值。 它可以是以下值之一:
E_DOCUMENT_1_NOT_FOUND |
找不到第一个文件。 |
E_DOCUMENT_2_NOT_FOUND |
找不到第二个文件。 |
E_FAIL |
未指定的错误。 |
E_NOT_MDI |
必须启用 Tab。 |
S_DIFF |
两个文档不相同。 |
S_MATCHED |
两个文档相同。 |
S_MATCHED_IGNORED |
除了被忽略的地方外,两个文档是相同的。 |
支持 EmEditor Professional v17.7 或之后的版本。