我有一个dataGridView
中的文件列表,我希望能够选择其中的两个(我可以弄清楚如何检查selectedRows计数)并将这些文件传递给Beyond Compare 3 for比较。我浏览了他们的支持页面,但我找不到办法。
在程序中,我需要打开应用程序(BC3)并将参数中的2个文件路径传递给应用程序以开始比较。
我只是使用System.Diagnostics.Process.Start(bc3.exe path)
启动而不是比较。
答案 0 :(得分:6)
查看他们的support page以配置版本控制系统。一般语法似乎是
" C:\ Program Files \ Beyond Compare 3 \ bcomp.exe" %1 %% 2%/ lefttitle ="%3%" / righttitle ="%4%"
所以看起来你需要传递四个参数,即左右文件,然后是左右标题。因此,您希望使用Start
System.Diagnostics.Process.Start("C:\Program Files\Beyond Compare 3\bcomp.exe",
"file1.txt file2.txt /lefttitle=\"foo\" /righttitle=\"bar\"")
我目前没有安装BC3,所以我还没有对上述内容进行测试,但它应该非常接近。
有关于将BC与git,svn等集成在一起的各种其他问题。他们将为您提供从命令行启动BC的其他示例。
答案 1 :(得分:3)
以下适用于我。
string bc3 = @"C:\Program files (x86)\Beyond Compare 3\bcompare.exe";
Process.Start(bc3, @"c:\temp\File1.cs c:\temp\File2.cs" );
或者如果你的文件名中有空格
Process.Start(bc3, @"""c:\temp\File 1.cs"" ""c:\temp\File 2.cs""" );