3

I have a list of files in a dataGridView that I would like to be able to select 2 of them (I can figure out how to check for the selectedRows count) and pass those files to Beyond Compare 3 for comparison. I looked through their Support page and I couldn't find a way to do that.

In the program I need to open the application (BC3) and pass the application the 2 file paths in an argument to start the comparison.

I am just using System.Diagnostics.Process.Start(bc3.exe path) to launch beyond compare.

4

2 に答える 2

7

バージョン管理システムの構成については、サポートページをご覧ください。一般的な構文は次のようです

"C:\ Program Files \ Beyond Compare 3 \ bcomp.exe"%1%%2%/ lefttitle = "%3%" / righttitle = "%4%"

したがって、左と右のファイル、次に左と右のタイトルの4つの引数を渡す必要があるようです。したがって、次の2つの引数形式を使用する必要があります。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などと統合するためのSOに関する他のさまざまな質問があります。それらは、コマンドラインからBCを開始する他の例を提供します。

于 2012-08-18T16:59:08.697 に答える
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""" );
于 2012-08-18T17:06:48.020 に答える